@charset "utf-8";
/* CSS Document */

/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
 { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:middle; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
html { overflow-y: scroll; -webkit-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content: none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance: none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance: checkbox; }
input[type="radio"]{ -webkit-appearance: radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
iframe { max-width:100%; }
/* ----------------------------------------------------------------------
 通常 css
---------------------------------------------------------------------- */
body{
	margin: 0;
    width: 100%;
   font-family: sans-serif, "平成角ゴシック Std" , "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
    font-size: 16px;
    line-height: 1;
	text-align: center;
    max-height: 999999px;
	overflow:hidden;
}
h2{
	font-size: 60px;
	font-weight: 400;
}
h3{
	font-size: 48px;
	font-weight: 400;
	font-family: "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
}
h4{
	font-size: 36px;
	font-weight: 400;
	font-family: "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
}
h5{
	font-size: 30px;
	font-weight: 400;
}
a{
	color: #000;
	text-decoration: none;
}
/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
header{
	position: relative;
	background: #fff;
	width: 100%;
	height: 80px;
}
.head_top{
	display: flex;
	position: relative;
}
.head_logo{
	position: relative;
	top: 0vw;
	left: 10px;
    width: 8%;
	padding: 0;
}
.head_logo img{
	width: 60%;
	height: auto;
}
.head_tel{
	position: relative;
	top: 0vw;
	left: 22vw;
	width: 23%;
}
.head_tel img{
	width: 100%;
	height: auto;
}
.head_mail{
	position: relative;
	top: 0vw;
	margin: 0 20px 0 auto;
	width: 23%;
	padding-top: 1.3vw;
}
.head_mail img{
	width: 70%;
	height: auto;
}
/* ----------------------------------------------------------------------
 sec01
---------------------------------------------------------------------- */
.sec01{
	display: block;
	width: 100%;
}
.sec01_i01 img{
	width: 100%;
	height: auto;
}
.sec01_link01{
	position: relative;
	top: -6.2vw;
	width: 28.4%;
	margin: 0 auto;
	
}
.sec01_link01 img{
	width: 70%;
	height: auto;
	margin: 0 0 0 200px;
}
.sec01_sp{
	display: none;
}
/* ----------------------------------------------------------------------
 sec02
---------------------------------------------------------------------- */
.sec02{
	width: 100%;
	white-space: nowrap;
}
.sec02_z01{
	width: 1300px;
	margin: 0 auto;
}
.sec02_p01{
	position: relative;
	top: -30px;
	left: -10px;
	width: 15vw;
	margin-left: auto;
	margin-right: 0;
	font-size: 40px;
	color: #fff;
	background: #0477bf;
	padding: 1vw;
	transform: rotate( 10deg );
}
.sec02_h01{
	position: relative;
	width: 800px;
	top: -20px;
	margin: 0 auto;
	font-weight: 700;
}
.sec02_h01::after{
	content: "";
    width: 800px;
    height: 80%;
    position: absolute;
    top: 20px;
	left: 0;
	text-align: center;
    background: #fdd22b;
	z-index: -1;
}
/*
.sec02_h02{
	text-align: left;
	padding: 0 3vw 2vw ;
    color: #fff;
    font-weight: lighter;
    text-shadow:
           5px 5px 0px #ff0000, -5px -5px 0px #ff0000,
          -5px 5px 0px #ff0000,  5px -5px 0px #ff0000,
           5px 0px 0px #ff0000, -5px  0px 0px #ff0000,
           0px 5px 0px #ff0000,  0px -5px 0px #ff0000;
    margin: 0;
}
.sec02_h02 span{
	padding-left: 24vw;
}*/
.sec02_h02{
	position: relative;
	top: -10px;
	margin: 50px;
}
.sec02_h02 img{
	width: 100%;
	height: auto;
}
.sec02_z02{
	background: url("images/01.png") center / cover no-repeat;
	position: relative;
    z-index: 1;
    width: 1300px;
    height: 633px;
	margin: 0 auto 0;
}

.sec02_l01{
	width: calc(1300px / 2 + 10px);
}
.sec02_p02{
	text-align: left;
	padding: 60px 30px ;
    color: #0067ab;
	font-size: 72px;
    text-shadow:
           5px 5px 0px #fff, -5px -5px 0px #fff,
          -5px 5px 0px #fff,  5px -5px 0px #fff,
           5px 0px 0px #fff, -5px  0px 0px #fff,
           0px 5px 0px #fff,  0px -5px 0px #fff;
    margin: 0;
	font-weight: 700;
}
.sec02_p02 span{
	margin-left: 8.9vw;
}

.sec02_l02{
	position: relative;
	display: flex;
	width: calc(1300px / 2 - 10px);
	left: 660px;
}
.sec02_p03{
	position: relative;
	width: calc(1300px / 4 );
	top: 7.5vw;
	left: -25px;
	font-family: "平成角ゴシック Std";
	text-shadow:
           2px 2px 0px #fff, -2px -2px 0px #fff,
          -2px 2px 0px #fff,  2px -2px 0px #fff,
           2px 0px 0px #fff, -2px  0px 0px #fff,
           0px 2px 0px #fff,  0px -2px 0px #fff;
}
.sec02_p03 span{
	position: relative;
	top: 2.1vw;
	color: #fff;
	font-size: 28.6px;
	text-shadow:
           0px 0px 0px #fff, -0px -0px 0px #fff,
          -0px 0px 0px #fff,  0px -0px 0px #fff,
           0px 0px 0px #fff, -0px  0px 0px #fff,
           0px 0px 0px #fff,  0px -0px 0px #fff;
}
.sec02_z04{
	position: relative;
	margin-top: 1vw;
	top: 120px;
}
.sec02_l03{
	color: #006493;
}

.sec02_p04{
	position: relative;
	top: -3vw;
	left: 0.5vw;
	width: 535px;
	height: 100px;
	padding-top: 30px;
	background: url("images/sikaku01.png") center / cover no-repeat;
	font-weight: 700;
}
.sec02_p05{
	position: relative;
	margin: 0 auto;
	top: -3vw;
	left: 0vw;
	width: 685px;
	height: 100px;
	padding-top: 30px;
	background: url("images/sikaku02.png") center / cover no-repeat;
	font-weight: 700;
}
.sec02_p06{
	position: relative;
	margin-left: auto;
	margin-right: 0;
	top: -3vw;
	left: 0vw;
	width: 575px;
	height: 100px;
	padding-top: 30px;
	background: url("images/sikaku03.png") center / cover no-repeat;
	font-weight: 700;
}
.sec02_z05{
	position: relative;
	top: 40px;
	display: flex;
	letter-spacing: -4px;
	font-weight: 700;
}
.sec02_p07{
	position: relative;
	padding-left: 10px;
	color: #fff;
	font-size: 72px;
	text-shadow:
           2px 2px 0px #000, -2px -2px 0px #000,
          -2px 2px 0px #000,  2px -2px 0px #000,
           2px 0px 0px #000, -2px  0px 0px #000,
           0px 2px 0px #000,  0px -2px 0px #000;
}
.sec02_p08{
	position: relative;
	top: 20px;
	padding-left: 50px;
	color: #fff;
	text-shadow:
           2px 2px 0px #000, -2px -2px 0px #000,
          -2px 2px 0px #000,  2px -2px 0px #000,
           2px 0px 0px #000, -2px  0px 0px #000,
           0px 2px 0px #000,  0px -2px 0px #000;
}

/* ----------------------------------------------------------------------
 sec03
---------------------------------------------------------------------- */
.sec03{
	margin-top: 50px;
}
.sec03_z02{
	width: 1050px;
	display: flex;
	margin: 50px auto;
}
.sec03_m01{
	width: calc(1050px / 3);
	height: 359px;
	background: url("images/m01.png") center / cover no-repeat;
}
.sec03_p01{
	position: relative;
	top: 100px;
}
.sec03_p02{
	position: relative;
	top: 140px;
	font-size: 100px;
	padding-left: 55px;
	letter-spacing: -6px;
}
.sec03_p03{
	position: relative;
	top: 150px;
	padding-left: 90px;
}


/* ----------------------------------------------------------------------
 sec04
---------------------------------------------------------------------- */
.sec04{
	width: 100%;
}
.sec04_z01{
	width: 1200px;
	margin: 0 auto;
}
.sec04_h01{
	
}
.sec04_z02{
	position: relative;
	width: 800px;
	height: 657px;
	text-align: left;
	border: solid 5px #32b16c;
	margin: 30px auto;
}
.sec04_p01{
	position: relative;
	top: 40px;
	left: -5px;
	color: #32b16c;
}
.sec04_m01{
	position: relative;
	top: 80px;
	left: 25px;
	line-height: 70px;
}
.sec04_p02{
	text-align: right;
	opacity: 0.8;
}
/* ----------------------------------------------------------------------
 sec05
---------------------------------------------------------------------- */
.sec05{
	margin-top: 30px;
}
.sec05_z01{
	width: 1200px;
	margin: 0 auto;
}

.sec05_z02{
	display: flex;
	justify-content: space-around;
}
.sec05_z01 .sec05_z02:nth-child(2){
	position: relative;
	top: -40px;
}
.sec05_z03 img{
	width: 548px;
	height: 309px;
}
.sec05_p01{
	position: relative;
	top: -80px;
	padding: 15px 0;
	background: url("images/長方形 14.png");
	color: #fff;
	text-shadow:
           2px 2px 0px #006cff, -2px -2px 0px #006cff,
          -2px 2px 0px #006cff,  2px -2px 0px #006cff,
           2px 0px 0px #006cff, -2px  0px 0px #006cff,
           0px 2px 0px #006cff,  0px -2px 0px #006cff;
}
/* ----------------------------------------------------------------------
 cv_01
---------------------------------------------------------------------- */
#cv_01{
	position: relative;
	width: 100%;
	height: auto;
	background: linear-gradient(to right, #4760ff , #0dccff);
	text-align: center;
	padding-bottom: 60px;
	white-space: nowrap;
	font-weight: bold;
}
#cv_01 .maincontent{
	position: relative;
	top: 0px;
	left: 0px;
	color: #fff;
	line-height: 60px;
	letter-spacing: -2px;
}
#cv_01 .maincontent p{
	color: #fff;
}
#cv_01 .maincontent .p_01{
	font-size: 2.3rem;
	line-height: 70px;
	padding: 100px 0 50px 0;
}
#cv_01 .maincontent h3{
	color: #ff5454;
	font-size: 5.8rem;
}
#cv_01 .maincontent .p_02{
	font-size: 3.5rem;
	padding: 20px 0 50px 0;
}
#cv_01 button{
	background: #fdd22b;
	border-radius: 10px;
	border: 0;
	width: 547px;
	height: 95px;
}
#cv_01 button:hover{
	opacity: 0.9;
}
#cv_01 .maincontent .p_03{
	font-size: 3rem;
}
@media (min-width: 501px) and (max-width: 1300px) {
#cv_01{
	padding-bottom: 5vw;
}
#cv_01 .maincontent .p_01{
	font-size: 3vw;
	line-height: 6vw;
	padding: 8vw 0 6vw 0;
}
#cv_01 .maincontent h3{
	color: #ff5454;
	font-size: 9vw;
}
#cv_01 .maincontent .p_02{
	font-size: 5vw;
	padding: 2vw 0 6vw 0;
}
#cv_01 button{
	background: #fdd22b;
	border-radius: 2vw;
	border: 0;
	width: calc((547/1120) *100vw);
	height: calc((95/1120) *100vw);
}
#cv_01 .maincontent .p_03{
	font-size: 4vw;
}
}
@media screen and (max-width:500px){
#cv_01{
	padding-bottom: 2vw;
	margin: 0 0 10vw 0;
}
#cv_01 .maincontent .p_01{
	font-size: 3vw;
	line-height: 6vw;
	padding: 8vw 0 4vw 0;
}
#cv_01 .maincontent h3{
	color: #ff5454;
	font-size: 9vw;
}
#cv_01 .maincontent .p_02{
	position: relative;
	top: -3vw;
	font-size: 5vw;
	padding: 0vw 0 0vw 0;
}
#cv_01 button{
	position: relative;
	top: -3vw;
	background: #fdd22b;
	border-radius: 2vw;
	border: 0;
	width: calc((547/1120) *100vw);
	height: calc((95/1120) *100vw);
}
#cv_01 .maincontent .p_03{
	font-size: 4vw;
}
}



/* ----------------------------------------------------------------------
 sec05_sp
---------------------------------------------------------------------- */
.carousel{
	display: none;
}
/* ----------------------------------------------------------------------
 sec06
---------------------------------------------------------------------- */
.sec06_z01{
	width: 1200px;
	display: flex;
	margin: 0 auto;
}
.sec06_z02{
	width: 50%;
	height: 600px;
	background: #ffffe6;
}
.sec06_p01{
	position: relative;
	top: 22px;
	left: 22px;
	width: 243px;
	height: 64px;
	padding-top: 10px;
	background: #fdd22b;
	letter-spacing: -2px;
}
.sec06_p02{
	position: relative;
	top: -60px;
	left: -20px;
	text-align: right;
	line-height: 80px;
	letter-spacing: -2px;
}
.sec06_p03{
	position: relative;
	top: -30px;
	color: #ff0000;
	font-size: 72px;
	line-height: 100px;
	letter-spacing: -5px;
	font-weight: 700;
}
.sec06_p04{
	position: relative;
	top: 15px;
	left: 40px;
	color: #1b1b1b;
	font-size: 60px;
	line-height: 70px;
	letter-spacing: -4px;
	text-align: left;
	font-weight: 700;
}
.sec06_z04{
	width: 50%;
}
.sec06_i01{
	width: 489px;
	position: relative;
	margin-left: auto;
	margin-right: 0;
}
.sec06_i02{
	position: relative;
	top: -350px;
}
.sec06_p05{
	position: relative;
	top: -180px;
	z-index: 1;
}

/* ----------------------------------------------------------------------
 sec07
---------------------------------------------------------------------- */
.sec07{
	margin-top: -330px;
}
.sec07_z01{
	width: 800px;
	height: 300px;
	margin: 50px auto;
	border: solid 5px #0476be;
}
.sec07_h01{
	position: relative;
	top: 40px;
	left: -22px;
	color: #0476be;
}
.sec07_p01{
	position: relative;
	top: 70px;
	text-align: left;
	line-height: 72px;
	padding-left: 30px;
}

/* ----------------------------------------------------------------------
 sec08
---------------------------------------------------------------------- */
.sec08{
	position: relative;
	height: 1080px;
	margin-top: 130px;
	background: url("images/10.png")center / cover no-repeat;
	z-index: -2;
}
.sec08_z01{
	position: relative;
	top: 160px;
	width: 1150px;
	height: 750px;
	margin: 0 auto 0;
	background-color: rgba(255,255,255,0.5);
	z-index: -1;
}
.sec08_z01::after{
	content: "";
    width: 1100px;
	height: 700px;
    position: absolute;
    top: 25px;
	left: 25px;
	text-align: center;
    border: solid 5px #fff;
	z-index: -1;
}
.sec08_z02{
	position: relative;
	top: -130px;
	left: 12vw;
	width: 80%;
	display: flex;
	z-index: 1;
}
.sec08_m01{
	text-align: left;
	margin-left: 10px;
}
.sec08_h01{
	position: relative;
	top: 100px;
}
.sec08_h02{
	position: relative;
	top: 130px;
	line-height: 48px;
	letter-spacing: -3px;
	font-weight: 700;
}
.sec08_z03{
	position: relative;
	top: 130px;

}
.sec08_p01{
	position: relative;
	top: -90px;
	font-size: 40px;
	font-weight: 700;
}
.sec08_p01::after{
	content: "";
    width: 1050px;
    height: 80%;
    position: absolute;
    top: 20px;
	left: 50px;
	text-align: center;
    background: #fdd22b;
	z-index: -1;
	opacity: 0.6;
}
.sec08_p02{
	position: relative;
	top: -50px;
	font-weight: 700;
}
.sec08_z04{
	position: relative;
	top: 130px;
}
.sec08_z04 img:nth-child(1){
	position: relative;
	top: 20px;
	left: 0px;
	z-index: 2;
}
.sec08_z04 img:nth-child(2){
	position: relative;
	top: -20px;
	left: -100px;
	z-index: 1;
}
.sec08_z05{
	display: flex;
	position: relative;
	top: 130px;
}
.sec08_h03{
	position: relative;
	width: 98%;
	top: 30px;
	left: 50px;
	text-align: left;
	line-height: 48px;
	font-weight: 700;
}
.sec08_i02{
	position: relative;
	top: -50px;
	left: 50px;
	width: 275px;
}
/*
.sec08_m03{
	position: relative;
	top: 185px;
	left: 0px;
	width: 547px;
	height: 95px;
	background: #fdd22b;
	margin: 0 auto;
	border-radius: 20px;
}
.sec08_p03{
	position: relative;
	top:25px;
	color: #fff;
	font-size: 50px;
	font-weight: 700;
}
.sec08_m03 img{
	width: 100%;
	height: auto;
}*/

/* ----------------------------------------------------------------------
 sec09
---------------------------------------------------------------------- */
.sec09{
	display: block;
}
.sec09_z01{
	width: 1200px;
	margin: 0 auto;
}
.sec09_h01{
	margin: 80px 0;
}
.sec09_z02{
	display: flex;
}
.sec09_z03 img:nth-child(2){
	position: relative;
	top:-180px;
}
.sec09_h02{
	position: relative;
	height: 10px;
	top:-260px;
	letter-spacing: -3px;
}
.sec09_h03{
	position: relative;
	width: 70%;
	top:-140px;
	left: 100px;
	letter-spacing: -3px;
	line-height: 60px;
	text-align: left;
	font-weight: 700;
}
.sec09_h04{
	position: relative;
	height: 10px;
	top:-280px;
	letter-spacing: -3px;
}
.sec09_z01 div:nth-child(3){
	position: relative;
	top:-80px;
}


	

.carousel2{
	display: none;
}

/* ----------------------------------------------------------------------
 sec10
---------------------------------------------------------------------- */
.sec10{
	width: 100%;
	margin-top: -8vw;
}
.sec10_z01{
	display: flex;
	justify-content: space-between;
	width: 31.5%;
}
.sec10_z01 img{
	width: 100%;
	height: auto;
}
.sec10_z01 img:nth-child(2){
	margin: 0 10%;
}

/* ----------------------------------------------------------------------
 sec11
---------------------------------------------------------------------- */
.sec11{
	margin-top: 80px;
}
.sec11_z02{
	
}
.sec11_p02{
	text-align: left;
	width: 1100px;
	margin: 60px auto 0;
	line-height: 48px;
	font-weight: 700;
}
.sec11_z03{
	position: relative;
	top:-100px;
	left: 680px
}
.sec11_z04{
	position: relative;
	top:-100px;
}
.sec11_z04::before{
	content: "";
    width: 1570px;
	height: 1081px;
    position: absolute;
	margin-top: -180px;
	margin-left: -900px;
	text-align: center;
    background: url("images/17.png");
	z-index: -1;
}
.sec11_z04::after{
	content: "";
    width: 1570px;
	height: 1081px;
    position: absolute;
	margin-top: -1000px;
	margin-left: -700px;
	text-align: center;
    background: url("images/18.png");
	z-index: -2;
}
.sec11_z05{
	width: 1200px;
	height: 265px;
	margin: 50px auto;
	border: solid 5px #fff;
	border-radius: 50px;
}
.sec11_z05::after{
	content: "";
	width: 1180px;
	height: 245px;
	position: absolute;
	margin-top: -150px;
	margin-left: -595px;
	border: solid 5px #fff;
	border-radius: 50px;
}
.sec11_p03{
	position: relative;
	top: 50px;
	color: #fdd22b;
	font-weight: 700;
}
.sec11_p04{
	position: relative;
	top: 80px;
	color: #fff;
	text-align: left;
	line-height: 48px;
	padding-left: 70px;
	font-weight: 700;
}
.sec11_z04 .sec11_z05:nth-child(1) .sec11_p03,
.sec11_z04 .sec11_z05:nth-child(3) .sec11_p03{
	text-align: left;
	padding-left: 30px;
}
.sec11_z04 .sec11_z05:nth-child(2) .sec11_p03,
.sec11_z04 .sec11_z05:nth-child(4) .sec11_p03{
	text-align: right;
	padding-right: 30px;
}

/* ----------------------------------------------------------------------
 sec12
---------------------------------------------------------------------- */
.sec12{
	margin-top: 0;
	background: #fffbc9;
	height: 1050px;
}
.sec12_h01{
	padding: 80px 0;
}
.sec12_z02{
	position: relative;
	top: 50px;
	display: flex;
	justify-content: space-around;
}
.sec12_z03{
	width: 30%;
	text-align: left;
}
.sec12_z03 img{
	width: 100%;
	height: auto;
}
.sec12_h02{
	padding: 30px 0;
}
.sec12_h03{
	position: relative;
	width: 85%;
	left: 30px;
	line-height: 60px;
	letter-spacing: -2px;
}

/* ----------------------------------------------------------------------
 sec13
---------------------------------------------------------------------- */
.sec13{
	background: url("images/haikei.png")center / cover no-repeat;
	color: #fff;
}
.sec13_z01{
	width: 1200px;
	margin: 0 auto;
}
.sec13_z02{
	padding-left: 200px;
	text-align: left;
}
.sec13_h01{
	position: relative;
	top: 90px;
	left: 200px;
	width: 37vw;
	margin-left: auto;
	margin-right: 0;
	color: #fdd22b;
	padding: 1vw;
	transform: rotate( 5deg );
}
.sec13_h02{
	position: relative;
	margin: 75px auto;
	font-weight: 700;
}
.sec13_h02::before{
	content: "";
    width: 139px;
	height: 139px;
    position: absolute;
	margin-top: -20px;
	margin-left: -160px;
	text-align: center;
    background: url("images/mark.png");
}
.sec13_z03{
	display: flex;
	justify-content: space-around;
}
.sec13_z04{
	width: 1050px;
	display: flex;
	margin: 75px auto;
}
.sec13_m01{
	text-align: left;
	padding-left: 90px;
	line-height: 52px;
	letter-spacing: -1px;
}
.sec13_m01 h5{
	padding: 27px 0;
}
.sec13_h03{
	position: relative;
	top: 10px;
}
.sec13_z05{
	display: flex;
	justify-content: space-around;
	margin: 30px 0 0;
	text-align: left;
}
.sec13_z05 h3{
	line-height: 96px;
}
.sec13_z05 h5{
	line-height: 50px;
	padding-left: 60px;
	font-weight: 700;
}
.sec13_m05 h5{
	position: relative;
	top: 96px;
	left: -150px;
}
.sec13_z08{
	position: relative;
	top: 50px;
	left: 300px;
	width: 440px;
	padding-bottom: 100px;
}

footer {
    background: #0079ae;
    padding: 2vw 0 2vw;
    text-align: center;
}
.f_title, .f_address, .f_tel {
	margin: 0 auto 1vw;
	color: #FFFFFF;
}
.f_title {
    width: 20%;
}
.f_address {
    width: 24%;
}
.f_tel {
    width: 10%;
}

.f_title img, .f_address img, .f_tel img {
	width: 100%;
    height: auto;
}
#copyright {
    margin: 1vw 0 5vw 0;
	color: #FFFFFF;
}
.sp_cont {
    display: none;
}
.sec99{
	display: block;
	position: fixed;
	background: #fdd22b;
	bottom: 0;
	left: 0vw;
	width: 100%;
	z-index: 999;
}
.sec99 img{
	width: 30%;
	height: auto;
}


@media (min-width: 501px) and (max-width: 1300px) {
body{
	margin: 0;
    width: 100%;
   font-family: sans-serif, "平成角ゴシック Std" , "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
    font-size: 16px;
    line-height: 1;
	text-align: center;
    max-height: 999999px;
	overflow:hidden;
}
h2{
	font-size: 52px;
	font-weight: 400;
}
h3{
	font-size: 36px;
	font-weight: 400;
	font-family: "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
}
h4{
	font-size: 36px;
	font-weight: 400;
	font-family: "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
}
h5{
	font-size: 36px;
	font-weight: 400;
}
a{
	color: #000;
	text-decoration: none;
}
/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
header{
	position: relative;
	background: #fff;
	width: 100%;
	height: auto;
}
.head_top{
	display: flex;
	position: relative;
}
.head_logo{
	position: relative;
	top: 0vw;
	left: 10px;
    width: 7%;
	padding: 0;
}
.head_logo img{
	width: 80%;
	height: auto;
}
.head_tel{
	position: relative;
	top: 0vw;
	left: 22vw;
	width: 20%;
}
.head_tel img{
	width: 100%;
	height: auto;
}
.head_mail{
	position: relative;
	top: 0vw;
	margin: 0 0 0 auto;
	width: 20%;
	padding-top: 1.3vw;
}
.head_mail img{
	width: 100%;
	height: auto;
}
/* ----------------------------------------------------------------------
 sec01
---------------------------------------------------------------------- */
.sec01{
	display: block;
	width: 100%;
}
.sec01_i01 img{
	width: 100%;
	height: auto;
}
.sec01_link01{
	position: relative;
	top: -6.2vw;
	width: 23%;
	margin: 0 auto;
	
}
.sec01_link01 img{
	width: 80%;
	height: auto;
}
.sec01_sp{
	display: none;
}

/* ----------------------------------------------------------------------
 sec02
---------------------------------------------------------------------- */
.sec02{
	width: 100%;
}
.sec02_z01{
	width: 100%;
	margin: 0 auto;
}
.sec02_p01{
	position: relative;
	top: -1.5vw;
	left: -1vw;
	width: 23vw;
	margin-left: auto;
	margin-right: 0;
	color: #fff;
	background: #0477bf;
	padding: 1vw;
	transform: rotate( 10deg );
	font-size: 4vw;
}
.sec02_h01{
	position: relative;
	width: 100%;
	top: -2.5vw;
	margin: 0 auto;
	font-weight: 700;
	font-size: 5vw;
}
.sec02_h01::after{
	content: "";
    width: 68.5%;
    height: 80%;
    position: absolute;
    top: 1vw;
	left: 15vw;
	text-align: center;
    background: #fdd22b;
	z-index: -1;
}
/*
.sec02_h02{
	text-align: left;
	padding: 0 3vw 2vw ;
    color: #fff;
    font-weight: lighter;
    text-shadow:
           5px 5px 0px #ff0000, -5px -5px 0px #ff0000,
          -5px 5px 0px #ff0000,  5px -5px 0px #ff0000,
           5px 0px 0px #ff0000, -5px  0px 0px #ff0000,
           0px 5px 0px #ff0000,  0px -5px 0px #ff0000;
    margin: 0;
}
.sec02_h02 span{
	padding-left: 24vw;
}*/
.sec02_h02{
	width: 90%;
	position: relative;
	top: -1vw;
	margin: 1.5vw auto 1.5vw;
}
.sec02_h02 img{
	width: 100%;
	height: auto;
}
.sec02_z02{
	background: url("images/01.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 0 -0.01%;
	position: relative;
    z-index: 1;
    width: 98%;
	height: 50vw;
	margin: 0 auto 0;
}
.sec02_z03{
	position: absolute;
	width: 100%;
	right: 0;
}
.sec02_l02{
	display: flex;
	width: calc(100% / 2 - 4vw);
	position: absolute;
	left: 47vw;
}
.sec02_p03{
	position: relative;
	width: calc(100% / 2 );
	top: 10.5vw;
	left: 0vw;
	font-size: 3.8vw;
	font-family: "平成角ゴシック Std";
	padding-left: 1vw;
	text-shadow:
           2px 2px 0px #fff, -2px -2px 0px #fff,
          -2px 2px 0px #fff,  2px -2px 0px #fff,
           2px 0px 0px #fff, -2px  0px 0px #fff,
           0px 2px 0px #fff,  0px -2px 0px #fff;
}
.sec02_p03 span{
	position: relative;
	top: 2.8vw;
	left: 1vw;
	color: #fff;
	font-size: 2vw;
	font-family: sans-serif;
	text-shadow: none;
}
.sec02_l02 .sec02_p03:nth-child(2){
	padding-left: 5vw;
}
.sec02_z04{
	margin-top: 2vw;
}
.sec02_l03{
	position: relative;
	top: 6vw;
	color: #006493;
}
.sec02_p04{
	position: relative;
	top: -3vw;
	left: 0.5vw;
	width: 44vw;
	height: 9vw;
	padding-top: 2vw;
	background: url("images/sikaku01.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 1vw -2vw;
	font-weight: 700;
	font-size: 5vw;
}
.sec02_p05{
	position: relative;
	margin: 0 auto;
	top: -2vw;
	left: 0vw;
	width: 57vw;
	height: 9vw;
	padding-top: 2vw;
	background: url("images/sikaku02.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 1vw -2vw;
	font-weight: 700;
	font-size: 5vw;
}
.sec02_p06{
	position: relative;
	margin-left: auto;
	margin-right: 0;
	top: -1vw;
	left: 0vw;
	width: 48vw;
	height: 9vw;
	padding-top: 2.5vw;
	background: url("images/sikaku03.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 1vw -2vw;
	font-weight: 700;
	font-size: 5vw;
}
.sec02_z05{
	position: relative;
	top: 14vw;
	display: flex;
	letter-spacing: 0px;
	font-weight: 700;
}
.sec02_p07{
	position: relative;
	padding-left: 0.5vw;
	color: #fff;
	font-size: 6vw;
	letter-spacing: -2px;
	text-shadow:
           2px 2px 0px #000, -2px -2px 0px #000,
          -2px 2px 0px #000,  2px -2px 0px #000,
           2px 0px 0px #000, -2px  0px 0px #000,
           0px 2px 0px #000,  0px -2px 0px #000;
}
.sec02_p08{
	position: relative;
	top: 1.2vw;
	padding-left: 2.0vw;
	color: #fff;
	font-size: 3.6vw;
	letter-spacing: 0px;
	text-shadow:
           2px 2px 0px #000, -2px -2px 0px #000,
          -2px 2px 0px #000,  2px -2px 0px #000,
           2px 0px 0px #000, -2px  0px 0px #000,
           0px 2px 0px #000,  0px -2px 0px #000;
}

/* ----------------------------------------------------------------------
 sec03
---------------------------------------------------------------------- */
.sec03{
	margin-top: 5vw;
}
.sec03_z02{
	width: 100%;
	display: flex;
	margin: 2.5vw auto;
}
.sec03_m01{
	width: calc(100% / 3);
	height: 34vw;
	background: url("images/m01.png") center / cover no-repeat ;
	background-size: 100% auto; 
}
.sec03_p01{
	position: relative;

	top: 8vw;
}
.sec03_p02{
	position: relative;
	top: 10vw;

	padding-left: 3vw;
	letter-spacing: -3px;
}
.sec03_p03{
	position: relative;
	top: 12vw;
	padding-left: 4vw;
}


/* ----------------------------------------------------------------------
 sec04
---------------------------------------------------------------------- */
.sec04{
	width: 100%;
}
.sec04_z01{
	width: 100%;
	margin: 0 auto;
}
.sec04_h01{
	margin: 5vw auto;
}
.sec04_z02{
	position: relative;
	width: 70%;
	height: 70vw;
	text-align: left;
	border: solid 5px #32b16c;
	margin: 5vw auto;
}
.sec04_p01{
	position: relative;
	top: 3vw;
	left: 0vw;
	font-size: 2.0rem;
	color: #32b16c;
}
.sec04_m01{
	position: relative;
	top: 4vw;
	left: 2vw;
	line-height: 8vw;
}
.sec04_m01 h4{
	font-size: 3vw;
}
.sec04_p02{
	text-align: right;
	padding-right: 3vw;
	opacity: 0.8;
}
/* ----------------------------------------------------------------------
 sec05
---------------------------------------------------------------------- */
.sec05{
	margin-top: 5vw;
	display: block;
}
.sec05_z01{
	width: 100%;
	margin: 0 auto;
}

.sec05_z02{
	display: flex;
	justify-content: space-around;
}
.sec05_z01 .sec05_z02:nth-child(2){
	position: relative;
	top: 0px;
}
.sec05_z03{
	width: 45%;
	margin: 0 auto;
}
.sec05_z03 img{
	width: 100%;
	height: auto;
}
.sec05_p01{
	position: relative;
	top: -9.5vw;
	padding: 3vw 0;
	background: url("images/長方形 14.png");
	color: #fff;
	text-shadow:
           2px 2px 0px #006cff, -2px -2px 0px #006cff,
          -2px 2px 0px #006cff,  2px -2px 0px #006cff,
           2px 0px 0px #006cff, -2px  0px 0px #006cff,
           0px 2px 0px #006cff,  0px -2px 0px #006cff;
}
.sec05_z04 h5{
	position: relative;
	width: 96%;
	top: -6vw;
	left: 5vw;
	text-align: left;
	color: #242424;
	line-height: 6vw;
	letter-spacing: -2px;
	font-size: 1.6rem;
}
	
/* ----------------------------------------------------------------------
 sec05_sp
---------------------------------------------------------------------- */
 
.sec05_sp {
	margin: 10vw 0 0;
}
 
* {
  box-sizing: border-box;
  scrollbar-color: transparent transparent; /* thumb and track color */
  scrollbar-width: 0px;
}
 
*::-webkit-scrollbar {
  width: 0;
}
 
*::-webkit-scrollbar-track {
  background: transparent;
}
 
*::-webkit-scrollbar-thumb {
  background: transparent;
  border: none;
}
 
* {
  -ms-overflow-style: none;
}
 
ol, li {
  list-style: none;
  margin: 0;
  padding: 0;
}
 
.carousel {
	display: none;
	position: relative;
	padding-top: 60%;
	filter: drop-shadow(0 0 10px #0003);
	perspective: 100px;
	margin: 0vw auto 0;
}
 
.carousel__viewport {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	overflow-x: scroll;
	counter-reset: item;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
}
 
.carousel__slide {
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	counter-increment: item;
}
 
.carousel__slide:nth-child(1) {
	background: url("images/02.png");
}
.carousel__slide:nth-child(2) {
	background: url("images/03.png");
}
.carousel__slide:nth-child(3) {
	background: url("images/04.png");
}
.carousel__slide:nth-child(4) {
	background: url("images/05.png");
}
.carousel__slide::before{
	content: "";
    width: 100%;
	height: 10vw;
    position: absolute;
	margin-top: 21.5vw;
	margin-left: 0vw;
	text-align: center;
    background: url( "images/長方形 14.png");
	z-index: 2;
}
 
.carousel__slide:nth-child(1):before {
	content: "医療廃棄物";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;
	
}
.carousel__slide:nth-child(2):before {
	content: "混合廃棄物";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;
	
}
.carousel__slide:nth-child(3):before {
	content: "多品目";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;

}
.carousel__slide:nth-child(4):before {
	content: "粗大ごみ";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;

}
 
.carousel__snapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	scroll-snap-align: center;
}

 
.carousel:hover .carousel__snapper,
.carousel:focus-within .carousel__snapper {
	animation-name: none;	
}
 
.carousel__navigation {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin-bottom: -5vw;
	text-align: center;
}
 
.carousel__navigation-list,
.carousel__navigation-item {
	display: inline-block;
}
 
.carousel__navigation-button {
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	background-color: #333;
	background-clip: content-box;
	border: 0.25rem solid transparent;
	border-radius: 50%;
	font-size: 0;
	transition: transform 0.1s;
}
 
.carousel::before,
.carousel::after,
.carousel__prev,
.carousel__next {
	position: absolute;
	top: 0;
	margin-top: 27.5%;
	width: 4rem;
	height: 4rem;
	transform: translateY(-50%);
	border-radius: 50%;
	font-size: 0;
	outline: 0;
}
 
.carousel::before,
.carousel__prev {
	left: -1rem;
}
.carousel__prev {
	left: 0.6rem;
}
 
.carousel::after,
.carousel__next {
	right: -1rem;
}
.carousel__next {
	right: 0.6rem;
}
 
.carousel::before,
.carousel::after {
	content: '';
	z-index: 1;
	background-color: #333;
	background-size: 1.5rem 1.5rem;
	background-repeat: no-repeat;
	background-position: center center;
	color: #fff;
	font-size: 2.5rem;
	line-height: 4rem;
	text-align: center;
	pointer-events: none;
}
 
.carousel::before {
	position: absolute;
	margin-top: 28vw;
	margin-left: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='0,50 80,100 80,0' fill='%23fff'/%3E%3C/svg%3E");
}
 
.carousel::after {
	position: absolute;
	margin-top: 28vw;
	margin-right: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='100,50 20,100 20,0' fill='%23fff'/%3E%3C/svg%3E");
}
/* ----------------------------------------------------------------------
 sec06
---------------------------------------------------------------------- */
.sec06_z01{
	width: 100%;
	display: block;
	margin: 0 auto 3vw;
}
.sec06_z02{
	width: 60%;
	height: 70vw;
	background: #ffffe6;
	margin: 0 auto 0;
}
.sec06_p01{
	position: relative;
	top: 3vw;
	left: 3vw;
	width: 25vw;
	height: 8vw;
	padding-top: 2vw;
	background: #fdd22b;
	letter-spacing: -2px;
	font-size: 3rem;
	
}
.sec06_p02{
	position: relative;
	top: -6vw;
	left: -4vw;
	text-align: right;
	line-height: 10vw;
	letter-spacing: -2px;
	font-size: 3rem;
}
.sec06_p03{
	position: relative;
	top: -2vw;
	color: #ff0000;
	line-height: 12vw;
	letter-spacing: -2px;
	font-weight: 700;
}
.sec06_p04{
	position: relative;
	top: 1vw;
	left: 5vw;
	color: #1b1b1b;
	
	line-height: 8vw;
	letter-spacing: -1px;
	text-align: left;
	font-weight: 700;
}
.sec06_z04{
	width: 80%;
	margin: 0 auto;
}
.sec06_i01{
	position: relative;
	width: 80%;
	margin-left: 20%;
	margin-right: 0;
}
.sec06_i01 img{
	width: 100%;
	height: auto;
}
.sec06_i02{
	position: relative;
	width: 80%;
	top: -50vw;
}
.sec06_i02 img{
	width: 100%;
	height: auto;
}

.sec06_p05{
	position: relative;
	top: -30vw;
	width: 90%;
	z-index: 1;
	margin: 0 auto;
}
.sec06_p05 img{
	width: 100%;
	height: auto;
}

/* ----------------------------------------------------------------------
 sec07
---------------------------------------------------------------------- */
.sec07{
	margin-top: -45vw;
}
.sec07_z01{
	width: 70%;
	height: 26vw;
	margin: 0 auto;
	border: solid 5px #0476be;
}
.sec07_h01{
	position: relative;
	top: 4vw;
	left: -6.5vw;
	color: #0476be;
}
.sec07_p01{
	position: relative;
	top: 6vw;
	text-align: left;
	line-height: 6vw;
	padding-left: 30px;
}

/* ----------------------------------------------------------------------
 sec08
---------------------------------------------------------------------- */
.sec08{
	position: relative;
	height: 78vw;
	margin-top: -15vw;
	background: url("images/10.png")center / cover no-repeat;
	background-size: 100% auto; 
	z-index: -2;
}
.sec08_z01{
	position: relative;
	top: 18vw;
	width: 90%;
	height: 47vw;
	margin: 0 auto 0px;
	background-color: rgba(255,255,255,0.5);
	z-index: -1;
}
.sec08_z01::after{
	content: "";
    width: 95%;
	height: 43vw;
    position: absolute;
    top: 2vw;
	left: 2vw;
	text-align: center;
    border: solid 3px #fff;
	z-index: -1;
}
.sec08_z02{
	position: relative;
	top: -12vw;
	display: flex;
	z-index: 1;
}
.sec08_i01{
	width: 30%;
}
.sec08_i01 img{
	width: 100%;
	height: auto;
}
.sec08_m01{
	position: relative;
	top: -11vw;
	text-align: left;
	margin-left: 3vw;
}
.sec08_h01{
	position: relative;
	top: 22vw;
}
.sec08_h02{
	position: relative;
	width: 100%;
	top: 23.5vw;
	line-height: 3vw;
	letter-spacing: -1px;
	font-size: 1.5rem;
	font-weight: 700;
}
.sec08_p01{
	position: relative;
	top: -9vw;
	font-size: 2rem;
	font-weight: 700;
	white-space: nowrap;
}
.sec08_p01::after{
	content: "";
    width: 80vw;
    height: 80%;
    position: absolute;
    top: 1vw;
	left: 5vw;
	text-align: center;
    background: #fdd22b;
	z-index: -1;
	opacity: 0.6;
}
.sec08_p02{
	position: relative;
	top: -6vw;
	font-size: 1.5rem;
	font-weight: 700;
	white-space: nowrap;
}
.sec08_z04 img:nth-child(1){
	position: relative;
	width: 25vw;
	height: auto;
	top: -2vw;
	left: 0px;
	z-index: 2;
}
.sec08_z04 img:nth-child(2){
	position: relative;
	width: 25vw;
	height: auto;
	top: -4vw;
	left: -5vw;
	z-index: 1;
}
.sec08_z05{
	display: flex;
}
.sec08_h03{
	position: relative;
	width: 80%;
	top: 0vw;
	left: 8vw;
	text-align: left;
	line-height: 3vw;
	font-size: 1.5rem;
	font-weight: 700;
}
.sec08_i02{
	position: relative;
	top: -3vw;
	left: -5vw;
	width: 20%;
}
.sec08_i02 img{
	width: 100%;
	height: auto;
}
.sec08_m03{
	position: relative;
	top: 13vw;
	left: 0px;
	width: 40vw;
	height: 6vw;
	background: #fdd22b;
	margin: 0 auto;
	border-radius: 10px;
}
.sec08_p03{
	position: relative;
	top: 1.5vw;
	color: #fff;
	font-weight: 700;
}
/*
.sec08_m03 img{
	width: 100%;
	height: auto;
}*/

/* ----------------------------------------------------------------------
 sec09
---------------------------------------------------------------------- */
.sec09{
	display: block;
	margin: 6vw auto 0;
}
.sec09_z01{
	width: 100%;
	margin: 0 auto 0;
}
.sec09_h01{
	margin: 1vw 0;
}
.sec09_z02{
	display: flex;
}
.sec09_z03 img:nth-child(1){
	position: relative;
	width: 100%;
	height: 35vw;
}
.sec09_z03 img:nth-child(2){
	position: relative;
	width: 60%;
	top: -12vw;
}
.sec09_z03{
	width: 40%;
	height: 10%;
	margin: 5vw auto 0vw;
}
.sec09_z03 img{
	width: 100%;
	height: auto;
}
.sec09_h02{
	position: relative;
	width: 130%;
	height: 1vw;
	top: -20vw;
	font-size: 3rem;
	letter-spacing: -3px;
	margin-left: -6vw;
}
.sec09_h04{
	position: relative;
	height: 10px;
	top:-20vw;
	font-size: 3rem;
	letter-spacing: -3px;
}
.sec09_h03{
	position: relative;
	width: 90%;
	top: -6vw;
	left: 3vw;
	letter-spacing: 0px;
	line-height: 4vw;
	text-align: left;
	font-size: 2rem;
	font-weight: 700;
}
.sec09_z01 div:nth-child(3){
	position: relative;
	top: 0px;
}
.sec09_z01 .sec09_z02:nth-child(2) .sec09_z03:nth-child(1) .sec09_h03{
	position: relative;
	top: -7.5vw;
}
.sec09_z01 .sec09_z02:nth-child(3) .sec09_z03:nth-child(2) .sec09_h02{
	position: relative;
	top: -17.1vw;
}
.sec09_z01 .sec09_z02:nth-child(3) .sec09_z03:nth-child(1) .sec09_h02{
	position: relative;
	top: -18.1vw;
}
	

	
/* ----------------------------------------------------------------------
 sec09
---------------------------------------------------------------------- */
.carousel2 {
	display: none;
	position: relative;
	padding-top: 110%;
	filter: drop-shadow(0 0 10px #0003);
	perspective: 100px;
	margin: 0vw auto 0;
}
 
.carousel2__viewport {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	overflow-x: scroll;
	counter-reset: item;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
}
 
.carousel2__slide {
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	height: 70vw;
	counter-increment: item;
}
 
.carousel2__snapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	scroll-snap-align: center;
}
 
.carousel2:hover .carousel__snapper,
.carousel2:focus-within .carousel__snapper {
	animation-name: none;	
}
 
.carousel2__navigation {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin-bottom: -5vw;
	text-align: center;
}
 
.carousel2__navigation-list,
.carousel2__navigation-item {
	display: inline-block;
}
 
.carousel2__navigation-button {
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	background-color: #333;
	background-clip: content-box;
	border: 0.25rem solid transparent;
	border-radius: 50%;
	font-size: 0;
	transition: transform 0.1s;
}
 
.carousel2::before,
.carousel2::after,
.carousel2__prev,
.carousel2__next {
	position: absolute;
	top: 0;
	margin-top: 77.5%;
	width: 4rem;
	height: 4rem;
	transform: translateY(-50%);
	border-radius: 50%;
	font-size: 0;
	outline: 0;
}
 
.carousel2::before,
.carousel2__prev {
	left: -1rem;
}
.carousel2__prev {
	left: 0.6rem;
}
 
.carousel2::after,
.carousel2__next {
	right: -1rem;
}
.carousel2__next {
	right: 0.6rem;
}
 
.carousel2::before,
.carousel2::after {
	content: '';
	z-index: 1;
	background-color: #333;
	background-size: 1.5rem 1.5rem;
	background-repeat: no-repeat;
	background-position: center center;
	color: #fff;
	font-size: 2.5rem;
	line-height: 4rem;
	text-align: center;
	pointer-events: none;
}
 
.carousel2::before {
	position: absolute;
	margin-top: 78vw;
	margin-left: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='0,50 80,100 80,0' fill='%23fff'/%3E%3C/svg%3E");
}
 
.carousel2::after {
	position: absolute;
	margin-top: 78vw;
	margin-right: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='100,50 20,100 20,0' fill='%23fff'/%3E%3C/svg%3E");
}

/* ----------------------------------------------------------------------
 sec10
---------------------------------------------------------------------- */
.sec10{
	width: 100%;
	margin-top: 5vw;
}
.sec10_z01{
	display: flex;
	justify-content: space-between;
	width: 31.5%;
}
.sec10_z01 img{
	width: 100%;
	height: auto;
}
.sec10_z01 img:nth-child(2){
	margin: 0 10%;
}

/* ----------------------------------------------------------------------
 sec11
---------------------------------------------------------------------- */
.sec11{
	margin-top: 5vw;
}
.sec11_z02{
	
}
.sec11_p02{
	text-align: left;
	width: 90%;
	padding-left: 5vw;
	margin: 5vw auto 0;
	line-height: 4vw;
	font-size: 1.5rem;
	font-weight: 700;
}
.sec11_z03{
	position: relative;
	width: 15%;
	top: 0vw;
	left: 83vw;
}
.sec11_z03 img{
	width: 100%;
	height: auto;
}
.sec11_z04{
	position: relative;
	width: 100%;
	top:-15vw;
}
.sec11_z04::before{
	content: "";
    width: 95vw;
	height: 95vw;
    position: absolute;
	margin-top: -20vw;
	margin-left: -50vw;
	text-align: center;
    background: url("images/17.png")center / cover no-repeat;
	background-size: 100% auto;
	z-index: -1;
}
.sec11_z04::after{
	content: "";
    width: 95vw;
	height: 95vw;
    position: absolute;
	margin-top: -80vw;
	margin-left: -45vw;
	text-align: center;
    background: url("images/18.png")center / cover no-repeat;
	background-size: 100% auto;
	z-index: -2;
}
.sec11_z05{
	width: 70%;
	height: 25vw;
	margin: 5vw auto;
	border: solid 1px #fff;
	border-radius: 25px;
}
.sec11_z05::after{
	content: "";
	width: 68.5%;
	height: 23vw;
	position: absolute;
	margin-top: -14.0vw;
	margin-left: -34vw;
	border: solid 1px #fff;
	border-radius: 20px;
}
.sec11_p03{
	position: relative;
	top: 5vw;
	color: #fdd22b;

	font-weight: 700;
}
.sec11_p04{
	position: relative;
	width: 95%;
	top: 8vw;
	color: #fff;
	text-align: left;
	line-height: 3.2vw;
	padding-left: 4vw;
	font-size: 1.7rem;
	font-weight: 700;
}
.sec11_z04 .sec11_z05:nth-child(1) .sec11_p03,
.sec11_z04 .sec11_z05:nth-child(3) .sec11_p03{
	text-align: left;
	padding-left: 3vw;
}
.sec11_z04 .sec11_z05:nth-child(2) .sec11_p03,
.sec11_z04 .sec11_z05:nth-child(4) .sec11_p03{
	text-align: right;
	padding-right: 3vw;
}

/* ----------------------------------------------------------------------
 sec12
---------------------------------------------------------------------- */
.sec12{
	margin-top: -10vw;
	background: #fffbc9;
	height: auto;
}
.sec12_h01{
	padding: 5vw 0;
}
.sec12_z02{
	position: relative;
	top: 5vw;
	display: flex;
	justify-content: space-around;
}
.sec12_z03{
	width: 30%;
	text-align: left;
}
.sec12_z03 img{
	width: 100%;
	height: auto;
}
.sec12_h02{
	padding: 3vw 0;
}
.sec12_h03{
	position: relative;
	left: 0vw;
	line-height: 4vw;
	
	letter-spacing: 0px;
	padding-bottom: 20vw
}

/* ----------------------------------------------------------------------
 sec13
---------------------------------------------------------------------- */
.sec13{
	background: url("images/haikei.png")center / cover no-repeat;
	color: #fff;
}
.sec13_z01{
	width: 100%;
	margin: 0 auto;
}
.sec13_z02{
	padding-left: 20vw;
	text-align: left;
}
.sec13_h01{
	position: relative;
	top: 5vw;
	left: -5vw;
	width: 40vw;
	margin-left: auto;
	margin-right: 0;
	
	color: #fdd22b;
	padding: 1vw;
	transform: rotate( 5deg );
}
.sec13_h02{
	position: relative;
	margin: 5vw auto;
	font-weight: 700;
}
.sec13_h02::before{
	content: "";
    width: 15vw;
	height: 15vw;
    position: absolute;
	margin-top: -4vw;
	margin-left: -16vw;
	text-align: center;
    background: url("images/mark.png");
	background-size: 100% auto;
}
.sec13_z03{
	display: flex;
	justify-content: space-around;
}
.sec13_z03 img{
	width: 30%;
	height: auto;
}
.sec13_z04{
	width: 100%;
	display: flex;
	margin: 5vw auto;
}
.sec12_i01{
	position: relative;
	left: 5vw;
	width: 40%;
}
.sec12_i01 img{
	width: 100%;
	height: auto;
}
.sec13_m01{
	text-align: left;
	padding-left: 10vw;
	line-height: 5vw;
	letter-spacing: -1px;
}
.sec13_m01 h5{
	padding: 2vw 0;
	font-size: 1.8rem;
}
.sec13_h03{
	position: relative;
	top: 10px;
}
.sec13_z05{
	display: flex;
	justify-content: space-around;
	margin: 2vw 0 0;
	text-align: left;
}
.sec13_z05 h3{
	line-height: 10vw;
}
.sec13_z05 h5{
	line-height: 5vw;
	padding-left: 5vw;
	font-weight: 700;
	font-size: 1.8rem;
}
.sec13_m05 h5{
	position: relative;
	top: 10vw;
	left: -10vw;
}
.sec13_z08{
	position: relative;
	top: 10vw;
	left: 20vw;
	width: 40vw;
	padding-bottom: 20vw;
}
.sec13_z08 img:nth-child(1){
	width: 8.6vw;
	height: auto;
}
.sec13_z08 img:nth-child(2){
	width: 10vw;
	height: auto;
}
	
footer {
    background: #0079ae;
    padding: 2vw 0 2vw;
    text-align: center;
}
.f_title, .f_address, .f_tel {
	margin: 0 auto 1vw;
}
.f_title {
    width: 40%;
}
.f_address {
    width: 48%;
}
.f_tel {
    width: 25%;
}

.f_title img, .f_address img, .f_tel img {
	width: 100%;
    height: auto;
}
#copyright {
    margin: 1vw 0 8vw 0;
}
.sp_cont {
    display: none;
}
.sec99{
	display: block;
	position: fixed;
	background: #fdd22b;
	bottom: 0;
	left: 0vw;
	width: 100%;
	z-index: 999;
}
.sec99 img{
	width: 40%;
	height: auto;
}
}

@media screen and (max-width:500px){
body{
	margin: 0;
    width: 100%;
   font-family: "平成角ゴシック Std" , "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
    font-size: 12px;
    line-height: 1;
	text-align: center;
    max-height: 999999px;
	overflow:hidden;
}
h2{
	font-size: 26px;
	font-weight: 400;
}
h3{
	font-size: 18px;
	font-weight: 400;
	font-family: "平成角ゴシック Std" , "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
}
h4{
	font-size: 16px;
	font-weight: 400;
	font-family: "平成角ゴシック Std" , "HG創英角ｺﾞｼｯｸUB" , "游明朝", "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", Honoka, Meiryo, "メイリオ", serif;
}
h5{
	font-size: 16px;
	font-weight: 400;
}
a{
	color: #000;
	text-decoration: none;
}
/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
header{
	position: relative;
	background: #fff;
	width: 100%;
	height: 10vw;
}
.head_top{
	display: flex;
	position: relative;
	top: 2vw;
}
.head_logo{
	position: relative;
	top: 0vw;
	left: 20px;
	width: 8%;
	padding: 0;
}
.head_logo img{
	width: 100%;
	height: auto;
}
.head_tel{
	position: relative;
	top: 0vw;
	left: 22vw;
	width: 23%;
}
.head_tel img{
	width: 100%;
	height: auto;
}
.head_mail{
	position: relative;
	top: 0vw;
	margin: 5px 10px 0 auto;
	width: 23%;
	padding-top: 0.8vw;
}
.head_mail img{
	width: 100%;
	height: auto;
}
/* ----------------------------------------------------------------------
 sec01
---------------------------------------------------------------------- */
.sec01{
	display: none;
	width: 100%;
}
.sec01_i01 img{
	width: 100%;
	height: auto;
}
.sec01_link01{
	position: relative;
	top: -7.2vw;
	width: 28.4%;
	margin: 0 auto;
	
}
.sec01_link01 img{
	width: 100%;
	height: auto;
}
/* ----------------------------------------------------------------------
 sec01_sp
---------------------------------------------------------------------- */
.sec01_sp{
	display: block;
	width: 100%;
}
.sec01_sp_i01 img{
	width: 100%;
	height: auto;
}
.sec01_sp_link01{
	position: absolute;
	top: 132vw;
	left: 26.5vw;
	width: 50%;
	margin: 0 auto;
}
.sec01_sp_link01 img{
	width: 80%;
	height: auto;
	margin: 10px;
}
/* ----------------------------------------------------------------------
 sec02
---------------------------------------------------------------------- */
.sec02{
	width: 100%;
}
.sec02_z01{
	width: 100%;
	margin: 15vw auto 0;
}
.sec02_p01{
	position: relative;
	top: -2.5vw;
	left: -4vw;
	width: 24vw;
	margin-left: auto;
	margin-right: 0;
	font-size: 16px;
	color: #fff;
	background: #0477bf;
	padding: 1vw;
	transform: rotate( 10deg );
}
.sec02_h01{
	position: relative;
	width: 100%;
	top: -2.5vw;
	margin: 2vw auto;
	font-weight: 700;
}
.sec02_h01::after{
	content: "";
    width: 85%;
    height: 50%;
    position: absolute;
    top: 3vw;
	left: 7vw;
	text-align: center;
    background: #fdd22b;
	z-index: -1;
}
/*
.sec02_h02{
	text-align: left;
	padding: 0 3vw 2vw ;
    color: #fff;
    font-weight: lighter;
    text-shadow:
           5px 5px 0px #ff0000, -5px -5px 0px #ff0000,
          -5px 5px 0px #ff0000,  5px -5px 0px #ff0000,
           5px 0px 0px #ff0000, -5px  0px 0px #ff0000,
           0px 5px 0px #ff0000,  0px -5px 0px #ff0000;
    margin: 0;
}
.sec02_h02 span{
	padding-left: 24vw;
}*/
.sec02_h02{
	width: 90%;
	position: relative;
	top: -1vw;
	margin: 3.5vw auto 3.5vw;
}
.sec02_h02 img{
	width: 100%;
	height: auto;
}
.sec02_z02{
	background: url("images/01.png") center / cover no-repeat;
	background-size: 100% 50vw; 
	background-position: 0 -0.01%;
	position: relative;
    z-index: 1;
    width: 98%;
	height: 50vw;
	margin: 0 auto 0;
}
.sec02_z03{
	display: flex;
	width: 100%;
	position: relative;
	left: 0vw;
}
.sec02_l01{
	width: calc(100% / 2 + 5vw);
}
.sec02_p02{
	text-align: left;
	padding: 4vw 1.5vw;
    color: #0067ab;
	font-size: 22px;
    text-shadow:
           0.1vw 0.1vw 0px #fff, -0.1vw -0.1vw 0px #fff,
          -0.1vw 0.1vw 0px #fff,  0.1vw -0.1vw 0px #fff,
           0.1vw 0px 0px #fff, -0.1vw  0px 0px #fff,
           0px 0.1vw 0px #fff,  0px -0.1vw 0px #fff;
    margin: 0;
	font-weight: 700;
}
.sec02_p02 span{
	margin-left: 12vw;
}

.sec02_l02{
	position: relative;
	display: flex;
	width: calc(100% / 2 - 4vw);
	left: 48vw;
}
.sec02_p03{
	position: relative;
	width: calc(100% / 2 );
	top: 10.5vw;
	left: 0vw;
	font-family: "平成角ゴシック Std";
	padding-left: 1vw;
	text-shadow:
            0.1vw 0.1vw 0px #fff, -0.1vw -0.1vw 0px #fff,
          -0.1vw 0.1vw 0px #fff,  0.1vw -0.1vw 0px #fff,
           0.1vw 0px 0px #fff, -0.1vw  0px 0px #fff,
           0px 0.1vw 0px #fff,  0px -0.1vw 0px #fff;
	font-weight: 700;
}
.sec02_p03 span{
	position: relative;
	top: 2.5vw;
	color: #fff;
	font-size: 0.6rem;
	font-family: sans-serif;
	text-shadow: none;
}
.sec02_l02 .sec02_p03:nth-child(2){
	position: relative;
	left: 1vw;
	padding-left: 2vw;
}
.sec02_l03{
	position: relative;
	top: -20vw;
}
.sec02_z04{
	margin-top: 2vw;
}
.sec02_l03{
	color: #006493;
}

.sec02_p04{
	position: relative;
	top: -5vw;
	left: -1vw;
	width: 50vw;
	height: 9vw;
	padding-top: 1vw;
	background: url("images/sikaku01.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 1vw -2vw;
	font-weight: 700;
}
.sec02_p05{
	position: relative;
	margin: 0 auto;
	top: -3vw;
	left: 0vw;
	width: 70vw;
	height: 9vw;
	padding-top: 1vw;
	background: url("images/sikaku02.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 1vw -2vw;
	font-weight: 700;
}
.sec02_p06{
	position: relative;
	margin-left: auto;
	margin-right: 0;
	top: -1vw;
	left: 0vw;
	width: 58vw;
	height: 9vw;
	padding-top: 1vw;
	background: url("images/sikaku03.png") center / cover no-repeat;
	background-size: 100% auto; 
	background-position: 1vw -2vw;
	font-weight: 700;
}
.sec02_z05{
	position: relative;
	top: 5vw;
	left: 0vw;
	display: flex;
	letter-spacing: 0px;
	font-weight: 700;
}
.sec02_p07{
	position: relative;
	padding-left: 0.5vw;
	color: #fff;
	font-size: 20px;
	letter-spacing: -1px;
	text-shadow:
            0.1vw 0.1vw 0px #000, -0.1vw -0.1vw 0px #000,
          -0.1vw 0.1vw 0px #000,  0.1vw -0.1vw 0px #000,
           0.1vw 0px 0px #000, -0.1vw  0px 0px #000,
           0px 0.1vw 0px #000,  0px -0.1vw 0px #000;
}
.sec02_p08{
	position: relative;
	top: 0.9vw;
	padding-left: 0.5vw;
	color: #fff;
	font-size: 0.8rem;
	letter-spacing: 0px;
	text-shadow:
           0.01vw 0.01vw 0px #000, -0.01vw -0.01vw 0px #000,
          -0.01vw 0.01vw 0px #000,  0.01vw -0.01vw 0px #000,
           0.01vw 0px 0px #000, -0.01vw  0px 0px #000,
           0px 0.01vw 0px #000,  0px -0.01vw 0px #000;
}

/* ----------------------------------------------------------------------
 sec03
---------------------------------------------------------------------- */
.sec03{
	margin-top: 10vw;
}
.sec03_h01{
	margin: 5vw auto;
	width: 80%;
	font-weight: 700;
}
.sec03_z02{
	width: 100%;
	display: flex;
	margin: 2.5vw auto;
}
.sec03_m01{
	width: calc(100% / 3);
	height: 34vw;
	background: url("images/m01.png") center / cover no-repeat ;
	background-size: 100% auto; 
}
.sec03_p01{
	position: relative;
	
	top: 8vw;
	font-weight: 700;
}
.sec03_p02{
	position: relative;
	top: 10vw;
	font-size: 40px;
	padding-left: 3vw;
	letter-spacing: -3px;
}
.sec03_p03{
	position: relative;
	top: 12vw;
	padding-left: 8vw;
}


/* ----------------------------------------------------------------------
 sec04
---------------------------------------------------------------------- */
.sec04{
	width: 100%;
}
.sec04_z01{
	width: 100%;
	margin: 10vw auto 0;
}
.sec04_h01{
	margin: 5vw auto;
	width: 90%;
	
	font-weight: 700;
}
.sec04_z02{
	position: relative;
	width: 90%;
	height: 69vw;
	text-align: left;
	border: solid 3px #32b16c;
	margin: 10vw auto;
}
.sec04_p01{
	position: relative;
	top: 3vw;
	left: -0.5vw;
	color: #32b16c;
	font-weight: 700;
}
.sec04_m01{
	position: relative;
	top: 5vw;
	left: 2vw;
	line-height: 8vw;
}
.sec04_m01 h4{
	font-weight: 700;
}
.sec04_p02{
	text-align: right;
	padding-right: 3vw;
	padding-bottom: 15vw;
	opacity: 0.8;
}
/* ----------------------------------------------------------------------
 sec05
---------------------------------------------------------------------- */
.sec05{
	margin-top: 15vw;
	display: none;
}
.sec05_z01{
	width: 100%;
	margin: 5vw auto 0;
}

.sec05_z02{
	display: block;
	justify-content: space-around;
}
.sec05_z01 .sec05_z02:nth-child(2){
	position: relative;
	top: 0px;
}
.sec05_z03{
	width: 90%;
	margin: 0 auto;
}
.sec05_z03 img{
	width: 100%;
	height: auto;
}
.sec05_p01{
	position: relative;
	top: -9.5vw;
	padding: 3vw 0;
	background: url("images/長方形 14.png");
	color: #fff;
	text-shadow:
			0.1vw 0.1vw 0px #006cff, -0.1vw -0.1vw 0px #006cff,
          -0.1vw 0.1vw 0px #006cff,  0.1vw -0.1vw 0px #006cff,
           0.1vw 0px 0px #006cff, -0.1vw  0px 0px #006cff,
           0px 0.1vw 0px #006cff,  0px -0.1vw 0px #006cff;
}
.sec05_z04 h5{
	position: relative;
	top: -6vw;
	left: 10vw;
	text-align: left;
	color: #242424;
	line-height: 6vw;
	letter-spacing: -2px;
}
	
/* ----------------------------------------------------------------------
 sec05_sp
---------------------------------------------------------------------- */
 
.sec05_sp {
	margin: 20vw 0 20vw;
}
 
* {
  box-sizing: border-box;
  scrollbar-color: transparent transparent; /* thumb and track color */
  scrollbar-width: 0px;
}
 
*::-webkit-scrollbar {
  width: 0;
}
 
*::-webkit-scrollbar-track {
  background: transparent;
}
 
*::-webkit-scrollbar-thumb {
  background: transparent;
  border: none;
}
 
* {
  -ms-overflow-style: none;
}
 
ol, li {
  list-style: none;
  margin: 0;
  padding: 0;
}
 
.carousel {
	display: block;
	position: relative;
	padding-top: 60%;
	filter: drop-shadow(0 0 10px #0003);
	perspective: 100px;
	margin: 0vw auto 0;
}
 
.carousel__viewport {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	overflow-x: scroll;
	counter-reset: item;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
}
 
.carousel__slide {
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	counter-increment: item;
}
 
.carousel__slide:nth-child(1) {
	background: url("images/02.png");
}
.carousel__slide:nth-child(2) {
	background: url("images/03.png");
}
.carousel__slide:nth-child(3) {
	background: url("images/04.png");
}
.carousel__slide:nth-child(4) {
	background: url("images/05.png");
}
.carousel__slide::before{
	content: "";
    width: 100%;
	height: 10vw;
    position: absolute;
	margin-top: 21.5vw;
	margin-left: 0vw;
	text-align: center;
    background: url( "images/長方形 14.png");
	z-index: 2;
}
 
.carousel__slide:nth-child(1):before {
	content: "医療廃棄物";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;
	font-size: 1.5em;
}
.carousel__slide:nth-child(2):before {
	content: "混合廃棄物";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;
	font-size: 1.5em;
}
.carousel__slide:nth-child(3):before {
	content: "引火性廃油";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;
	font-size: 1.5em;
}
.carousel__slide:nth-child(4):before {
	content: "油性塗料";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-40%,70px);
	padding-top: 4vw;
	color: #fff;
	font-size: 1.5em;
}
 
.carousel__snapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	scroll-snap-align: center;
}
 
.carousel:hover .carousel__snapper,
.carousel:focus-within .carousel__snapper {
	animation-name: none;	
}
 
.carousel__navigation {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin-bottom: -8vw;
	text-align: center;
}
 
.carousel__navigation-list,
.carousel__navigation-item {
	display: inline-block;
}
 
.carousel__navigation-button {
	display: inline-block;
	width: 1.0rem;
	height: 1.0rem;
	background-color: #333;
	background-clip: content-box;
	border: 0.25rem solid transparent;
	border-radius: 50%;
	font-size: 0;
	transition: transform 0.1s;
}
 
.carousel::before,
.carousel::after,
.carousel__prev,
.carousel__next {
	position: absolute;
	top: 0;
	margin-top: 27.5%;
	width: 2rem;
	height: 2rem;
	transform: translateY(-50%);
	border-radius: 50%;
	font-size: 0;
	outline: 0;
}
 
.carousel::before,
.carousel__prev {
	left: -1rem;
}
.carousel__prev {
	left: 0.6rem;
}
 
.carousel::after,
.carousel__next {
	right: -1rem;
}
.carousel__next {
	right: 0.6rem;
}
 
.carousel::before,
.carousel::after {
	content: '';
	z-index: 1;
	background-color: #333;
	background-size: 1.5rem 1.5rem;
	background-repeat: no-repeat;
	background-position: center center;
	color: #fff;
	font-size: 2.5rem;
	line-height: 4rem;
	text-align: center;
	pointer-events: none;
}
#carousel2__slide1 .sec09_z03:nth-child(1) .sec09_h03{
	position: relative;
	top: -24.5vw;
}
#carousel2__slide4 .sec09_z03:nth-child(1) .sec09_h14{
	position: relative;
	top: -34.5vw;
}
#carousel2__slide3 .sec09_z03:nth-child(1) .sec09_h03{
	position: relative;
	top: -21.5vw;
}
 
.carousel::before {
	position: absolute;
	margin-top: 28vw;
	margin-left: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='0,50 80,100 80,0' fill='%23fff'/%3E%3C/svg%3E");
}
 
.carousel::after {
	position: absolute;
	margin-top: 28vw;
	margin-right: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='100,50 20,100 20,0' fill='%23fff'/%3E%3C/svg%3E");
}
/* ----------------------------------------------------------------------
 sec06
---------------------------------------------------------------------- */
.sec06_z01{
	width: 100%;
	display: block;
	margin: 0 auto 0;
}
.sec06_z02{
	width: 80%;
	height: 70vw;
	background: #ffffe6;
	margin: 0 auto 5vw;
}
.sec06_p01{
	position: relative;
	top: 3vw;
	left: 8vw;
	width: 25vw;
	height: 8vw;
	padding-top: 2vw;
	background: #fdd22b;
	letter-spacing: -2px;
	font-size: 1.3rem;
	font-weight: 700;
}
.sec06_p02{
	position: relative;
	top: -6vw;
	left: -14vw;
	text-align: right;
	line-height: 10vw;
	letter-spacing: -2px;
	font-size: 1.3rem;
	font-weight: 700;
}
.sec06_p03{
	position: relative;
	top: -2vw;
	color: #ff0000;
	font-size: 34px;
	line-height: 12vw;
	letter-spacing: -2px;
	font-weight: 700;
}
.sec06_p04{
	position: relative;
	top: 1vw;
	left: 8vw;
	color: #1b1b1b;
	font-size: 30px;
	line-height: 8vw;
	letter-spacing: -1px;
	text-align: left;
	font-weight: 700;
}
.sec06_z04{
	width: 80%;
	margin: 5vw auto;
}
.sec06_i01{
	position: relative;
	width: 80%;
	margin-left: 20%;
	margin-right: 0;
}
.sec06_i01 img{
	width: 100%;
	height: auto;
}
.sec06_i02{
	position: relative;
	width: 80%;
	top: -50vw;
}
.sec06_i02 img{
	width: 100%;
	height: auto;
}
.sec06_p05{
	position: relative;
	top: -30vw;
	width: 90%;
	z-index: 1;
	margin: 0 auto;
}
.sec06_p05 img{
	width: 100%;
	height: auto;
}

/* ----------------------------------------------------------------------
 sec07
---------------------------------------------------------------------- */
.sec07{
	margin-top: -45vw;
}
.sec07_z01{
	width: 80%;
	height: 26vw;
	margin: 0 auto;
	border: solid 5px #0476be;
}
.sec07_h01{
	position: relative;
	top: 4vw;
	left: -3vw;
	color: #0476be;
	font-weight: 700;
}
.sec07_p01{
	position: relative;
	top: 6vw;
	text-align: left;
	line-height: 6vw;
	padding-left: 20px;
	font-weight: 700;
}

/* ----------------------------------------------------------------------
 sec08
---------------------------------------------------------------------- */
.sec08{
	position: relative;
	width: 200vw;
	height: 150vw;
	margin: -20vw auto 0;
	background: url("images/10.png")center / cover no-repeat;
	background-size: 100% auto; 
	margin-left: calc(50% - 200vw/2);
	z-index: -4;
	
}
.sec08_z01{
	position: relative;
	top: 30vw;
	width: 48%;
	height: 100vw;
	margin: 0 auto 10px;
	background-color: rgba(255,255,255,0.5);
	z-index: -3;
}
.sec08_z01::after{
	content: "";
    width: 95%;
	height: 95vw;
    position: absolute;
    top: 1.5vw;
	left: 1.5vw;
	text-align: center;
    border: solid 3px #fff;
	z-index: -2;
}
.sec08_z02{
	position: relative;
	width: 93%;
	top: -12vw;
	display: block;
	z-index: 1;
	margin: 0 auto;
}
.sec08_i01{
	position: relative;
	top: -10vw;
	width: 20%;
}
.sec08_i01 img{
	width: 100%;
	height: auto;
}
.sec08_m01{
	position: relative;
	top: -11vw;
	left: 2vw;
	text-align: left;
	margin-left: 1.5vw;
}
.sec08_h01{
	position: relative;
	top: 23vw;
	left: -7vw;
	font-size: 1.2rem;
	font-weight: 700;
}
.sec08_h02{
	position: relative;
	left: -7vw;
	width: 90%;
	top: 26.5vw;
	line-height: 5.2vw;
	letter-spacing: -1px;
	font-weight: 700;
}
.sec08_p01{
	position: relative;
	width: 94%;
	top: -25vw;
	left: 3vw;
	font-size: 26px;
	font-weight: 700;
}
.sec08_p01::after{
	content: "";
    width: 88vw;
    height: 90%;
    position: absolute;
    top: 1.5vw;
	left: 1vw;
	text-align: center;
    background: #fdd22b;
	z-index: -1;
	opacity: 0.6;
}
.sec08_p02{
	position: relative;
	top: -24vw;
	width: 80%;
	margin: 0 auto;
	font-weight: 700;
}
.sec08_z04 img:nth-child(1){
	position: relative;
	width: 35vw;
	height: auto;
	top: -18vw;
	left: 0px;
	z-index: 2;
}
.sec08_z04 img:nth-child(2){
	position: relative;
	width: 35vw;
	height: auto;
	top: -20vw;
	left: -5vw;
	z-index: 1;
}
.sec08_z05{
	display: flex;
}
.sec08_h03{
	position: relative;
	width: 90%;
	top: -15vw;
	left: 5vw;
	text-align: left;
	line-height: 5.0vw;
	font-size: 0.9rem;
	font-weight: 700;
}
.sec08_i02{
	position: relative;
	top: -15vw;
	left:-3vw;
	width: 50%;
}
.sec08_i02 img{
	width: 100%;
	height: auto;
}
.sec08_m03{
	position: relative;
	top: 30vw;
	left: 0px;
	width: 50vw;
	height: 10vw;
	background: #fdd22b;
	margin: 0 auto;
	border-radius: 10px;
}
.sec08_p03{
	position: relative;
	top: 3.0vw;
	color: #fff;

	font-weight: 700;
}
/*
.sec08_m03 img{
	width: 100%;
	height: auto;
}*/

/* ----------------------------------------------------------------------
 sec09
---------------------------------------------------------------------- */
.sec09{
	display: none;
	margin: 50vw auto 0;
}
.sec09_z01{
	width: 100%;
	margin: 10vw auto 0;
}
.sec09_h01{
	margin: 5vw 0;
}
.sec09_z02{
	display: block;
}
.sec09_z03 img:nth-child(1){
	position: relative;
	width: 100%;
	height: 60vw;
}
.sec09_z03 img:nth-child(2){
	position: relative;
	width: 60%;
	top: -26vw;
}
.sec09_z03{
	width: 80%;
	height: 79%;
	margin: 0 auto 0vw;
}
.sec09_z03 img{
	width: 100%;
	height: auto;
}
.sec09_h02{
	position: relative;
	height: 10px;
	top:-40vw;
	
	letter-spacing: 0px;
	font-weight: 700;
}
.sec09_h03{
	position: relative;
	width: 85%;
	top: -20vw;
	left: 6vw;
	letter-spacing: 0px;
	line-height: 5vw;
	text-align: left;
	font-weight: 700;
}
.sec09_z01 div:nth-child(3){
	position: relative;
	top: 0px;
}
.sec09_h04{
	position: relative;
	height: 10px;
	top:-45vw;
	
	letter-spacing: 0px;
}
.sec09_h11{
	position: relative;
	height: 10px;
	top:-40vw;
	font-size: 1.8rem;
	letter-spacing: -3px;
	font-weight: 700;
}
.sec09_h12{
	position: relative;
	height: 10px;
	top:-40vw;
	font-size: 1.8rem;
	letter-spacing: -3px;
	font-weight: 700;
}
.sec09_h13{
	position: relative;
	height: 10px;
	top:-37vw;
	font-size: 1.8rem;
	letter-spacing: -3px;
	font-weight: 700;
}
.sec09_h14{
	position: relative;
	height: 10px;
	top:-35vw;
	font-size: 1.8rem;
	letter-spacing: -3px;
	font-weight: 700;
}
	
/* ----------------------------------------------------------------------
 sec09
---------------------------------------------------------------------- */
.carousel2 {
	display: block;
	position: relative;
	padding-top: 110%;
	filter: drop-shadow(0 0 10px #0003);
	perspective: 100px;
	margin: 0vw auto 0;
}
 
.carousel2__viewport {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	overflow-x: scroll;
	counter-reset: item;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
}
 
.carousel2__slide {
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	height: 70vw;
	counter-increment: item;
}
 
.carousel2__snapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	scroll-snap-align: center;
}
 
.carousel2:hover .carousel__snapper,
.carousel2:focus-within .carousel__snapper {
	animation-name: none;	
}
 
.carousel2__navigation {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin-bottom: -5vw;
	text-align: center;
}
 
.carousel2__navigation-list,
.carousel2__navigation-item {
	display: inline-block;
}
 
.carousel2__navigation-button {
	display: inline-block;
	width: 1.0rem;
	height: 1.0rem;
	background-color: #333;
	background-clip: content-box;
	border: 0.25rem solid transparent;
	border-radius: 50%;
	font-size: 0;
	transition: transform 0.1s;
}
 
.carousel2::before,
.carousel2::after,
.carousel2__prev,
.carousel2__next {
	position: absolute;
	top: 0;
	margin-top: 77.5%;
	width: 2rem;
	height: 2rem;
	transform: translateY(-50%);
	border-radius: 50%;
	font-size: 0;
	outline: 0;
}
 
.carousel2::before,
.carousel2__prev {
	left: -1rem;
}
.carousel2__prev {
	left: 0.6rem;
}
 
.carousel2::after,
.carousel2__next {
	right: -1rem;
}
.carousel2__next {
	right: 0.6rem;
}
 
.carousel2::before,
.carousel2::after {
	content: '';
	z-index: 1;
	background-color: #333;
	background-size: 1.5rem 1.5rem;
	background-repeat: no-repeat;
	background-position: center center;
	color: #fff;
	font-size: 2.5rem;
	line-height: 4rem;
	text-align: center;
	pointer-events: none;
}
 
.carousel2::before {
	position: absolute;
	margin-top: 78vw;
	margin-left: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='0,50 80,100 80,0' fill='%23fff'/%3E%3C/svg%3E");
}
 
.carousel2::after {
	position: absolute;
	margin-top: 78vw;
	margin-right: 5vw;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolygon points='100,50 20,100 20,0' fill='%23fff'/%3E%3C/svg%3E");
}

/* ----------------------------------------------------------------------
 sec10
---------------------------------------------------------------------- */
.sec10{
	width: 100%;
	margin-top: 15vw;
}
.sec10_z01{
	display: flex;
	justify-content: space-between;
	width: 31.5%;
}
.sec10_z01 img{
	width: 100%;
	height: auto;
}
.sec10_z01 img:nth-child(2){
	margin: 0 10%;
}

/* ----------------------------------------------------------------------
 sec11
---------------------------------------------------------------------- */
.sec11{
	margin-top: 10vw;
}
.sec11_p01{
	width: 85%;
	text-align: left;
	margin: 0 auto;
	font-weight: 700;
}
.sec11_p02{
	text-align: left;
	width: 85%;
	padding-left: 0vw;
	margin: 10vw auto ;
	line-height: 4vw;
	
	font-weight: 700;
}
.sec11_z03{
	position: relative;
	width: 15%;
	top: 0vw;
	left: 83vw;
}
.sec11_z03 img{
	width: 100%;
	height: auto;
}
.sec11_z04{
	position: relative;
	width: 100%;
	top:-15vw;
}
.sec11_z04::before{
	content: "";
    width: 195vw;
	height: 95vw;
    position: absolute;
	margin-top: -5vw;
	margin-left: -50vw;
	text-align: center;
    background: url("images/17.png")center / cover no-repeat;
	background-size: 100% auto;
	z-index: -1;
}
.sec11_z04::after{
	content: "";
    width: 195vw;
	height: 95vw;
    position: absolute;
	margin-top: -95vw;
	margin-left: -50vw;
	text-align: center;
    background: url("images/18.png")center / cover no-repeat;
	background-size: 100% auto;
	z-index: -2;
}
.sec11_z05{
	width: 70%;
	height: 40vw;
	margin: 5vw auto;
	border: solid 1px #fff;
	border-radius: 25px;
}
.sec11_z05::after{
	content: "";
	width: 68%;
	height: 38vw;
	position: absolute;
	margin-top: -21.9vw;
	margin-left: -34.2vw;
	border: solid 1px #fff;
	border-radius: 23px;
}
.sec11_p03{
	position: relative;
	top: 5vw;
	color: #fdd22b;
	font-size: 5vw;
	font-weight: 700;
}
.sec11_p04{
	position: relative;
	top: 10vw;
	color: #fff;
	text-align: left;
	line-height: 4.5vw;
	padding-left: 4vw;
	padding-right: 4vw;
	font-size: 3.7vw;
	font-weight: 700;
}
.sec11_z04 .sec11_z05:nth-child(1) .sec11_p03,
.sec11_z04 .sec11_z05:nth-child(3) .sec11_p03{
	text-align: left;
	padding-left: 3vw;
}
.sec11_z04 .sec11_z05:nth-child(2) .sec11_p03,
.sec11_z04 .sec11_z05:nth-child(4) .sec11_p03{
	text-align: right;
	padding-right: 3vw;
}


/* ----------------------------------------------------------------------
 sec12
---------------------------------------------------------------------- */
.sec12{
	margin-top: -15vw;
	background: #fffbc9;
	height: auto;
}
.sec12_h01{
	padding: 5vw 0;
	
	font-weight: 700;
}
.sec12_z02{
	position: relative;
	top: 5vw;
	display: flex;
	justify-content: space-around;
}
.sec12_z03{
	width: 30%;
	text-align: left;
}
.sec12_z03 img{
	width: 100%;
	height: auto;
}
.sec12_h02{
	padding: 3vw 0;
	font-weight: 700;
}
.sec12_h03{
	position: relative;
	width: 100%;
	left: 0vw;
	line-height: 4.5vw;
	letter-spacing: 0px;
	padding-bottom: 20vw;
	font-weight: 700;
}


/* ----------------------------------------------------------------------
 sec13
---------------------------------------------------------------------- */
.sec13{
	background: url("images/haikei.png")center / cover no-repeat;
	color: #fff;
}
.sec13_z01{
	width: 100%;
	margin: 0 auto;
}
.sec13_z02{
	padding-left: 20vw;
	text-align: left;
}
.sec13_h01{
	position: relative;
	top: 5vw;
	left: -2vw;
	width: 35vw;
	margin-left: auto;
	margin-right: 0;
	font-size: 0.8rem;
	color: #fdd22b;
	padding: 1vw;
	transform: rotate( 5deg );
	font-weight: 700;
}
.sec13_h02{
	position: relative;
	margin: 5vw auto;
	font-size: 1.3rem;
	font-weight: 700;
}
.sec13_h02::before{
	content: "";
    width: 15vw;
	height: 15vw;
    position: absolute;
	margin-top: -4vw;
	margin-left: -16vw;
	text-align: center;
    background: url("images/mark.png");
	background-size: 100% auto;
}
.sec13_z03{
	display: flex;
	justify-content: space-around;
}
.sec13_z03 img{
	width: 30%;
	height: auto;
}
.sec13_z04{
	width: 100%;
	display: flex;
	margin: 5vw auto;
}
.sec12_i01{
	position: relative;
	left: 5vw;
	width: 40%;
}
.sec12_i01 img{
	width: 100%;
	height: auto;
}
.sec13_m01{
	text-align: left;
	padding-left: 7vw;
	line-height: 5vw;
	letter-spacing: 0px;
}
.sec13_m01 h5{
	font-size: 0.7rem;
	padding: 2vw 0;
	
}
.sec13_h03{
	position: relative;
	top: 2vw;
	margin-top: 5vw;
	font-weight: 700;
	
}
.sec13_z05{
	display: flex;
	justify-content: space-around;
	margin: 2vw 0 0;
	text-align: left;
	font-weight: 700;
}
.sec13_z05 h3{
	line-height: 10vw;
}
.sec13_z05 h5{
	font-size: 0.7rem;
	line-height: 5vw;
	padding-left: 5vw;
	font-weight: 700;
}
.sec13_m05 h5{
	position: relative;
	top: 10vw;
	left: -6vw;
}
.sec13_z08{
	position: relative;
	top: 10vw;
	left: 20vw;
	width: 40vw;
	padding-bottom: 20vw;
}
.sec13_z08 img:nth-child(1){
	width: 8.6vw;
	height: auto;
}
.sec13_z08 img:nth-child(2){
	width: 10vw;
	height: auto;
}
	
footer {
    background: #0079ae;
    padding: 5vw 0 3vw;
    text-align: center;
}
.f_title, .f_address, .f_tel {
	margin: 0 auto 2vw;
}
.f_title {
    width: 80%;
}
.f_address {
    width: 90%;
}
.f_tel {
    width: 50%;
}

.f_title img, .f_address img, .f_tel img {
	width: 100%;
    height: auto;
}
#copyright {
	padding: 3vw 0 9vw 0;
    margin-top: 0vw;
}
.sp_cont {
    display: none;
}
.sec99{
	display: block;
	position: fixed;
	background: #fdd22b;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 999;
}
.sec99 img{
	width: 70%;
	height: auto;
}
}


@keyframes tonext {
  75% {
    left: 0;
  }
  95% {
    left: 100%;
  }
  98% {
    left: 100%;
  }
  99% {
    left: 0;
  }
}
 
@keyframes tostart {
  75% {
    left: 0;
  }
  95% {
    left: -300%;
  }
  98% {
    left: -300%;
  }
  99% {
    left: 0;
  }
}
 
@keyframes snap {
  96% {
    scroll-snap-align: center;
  }
  97% {
    scroll-snap-align: none;
  }
  99% {
    scroll-snap-align: none;
  }
  100% {
    scroll-snap-align: center;
  }
}
 
@media (hover: hover) {
  .carousel__snapper {
	animation-name: tonext, snap;
	animation-timing-function: ease;
	animation-duration: 4s;
	animation-iteration-count: infinite;
  }
 
  .carousel__slide:last-child .carousel__snapper {
	animation-name: tostart, snap;
  }
}
 
@media (prefers-reduced-motion: reduce) {
  .carousel__snapper {
	animation-name: none;
  }
}











