	/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

	html {
		color: #333333;
		font-size: 17px;
		line-height: 1.6em;
		letter-spacing: 1px;
	}
	
	::-moz-selection {
		background: #b3d4fc;
		text-shadow: none;
	}
	
	::selection {
		background: #b3d4fc;
		text-shadow: none;
	}
	
	hr {
		display: block;
		height: 1px;
		border: 0;
		border-top: 1px solid #ccc;
		margin: 1em 0;
		padding: 0;
	}
	
	audio,
	canvas,
	iframe,
	img,
	svg,
	video {
		vertical-align: middle;
	}
	
	fieldset {
		border: 0;
		margin: 0;
		padding: 0;
	}
    

	/* ====================================
	 Media Queries
	==================================== */

	@media only screen and (min-width: 35em) {

	}

	@media print,
	   (-o-min-device-pixel-ratio: 5/4),
	   (-webkit-min-device-pixel-ratio: 1.25),
	   (min-resolution: 120dpi) {

	}

	/* Helper classes */

	.hidden {
		display: none !important;
		visibility: hidden;}
		.visuallyhidden 
	{
	
	border: 0;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}
	
	.visuallyhidden.focusable:active,
	.visuallyhidden.focusable:focus {
		clip: auto;
		height: auto;
		margin: 0;
		overflow: visible;
		position: static;
		width: auto;
	}
	
	.invisible {
		visibility: hidden;
	}
	
	.clearfix:before,
	.clearfix:after {
		content: " ";
		display: table;
	}
	
	.clearfix:after {
		clear: both;
	}
	
	.clearfix {
		*zoom: 1;
	}

	/* Print styles */

	@media print {
	*,
	*:before,
	*:after { 
		background: transparent !important;
		color: #000 !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
		
	a,
	a:visited {
		text-decoration: underline;
	}
		
	a[href]:after {
		content: " (" attr(href) ")";
	}
		
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	
	a[href^="#"]:after,
	a[href^="javascript:"]:after {
		 content: "";
	 }
		 
	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
		
	thead {
		display: table-header-group;
	}
		
	tr,
	img {
		page-break-inside: avoid;
	}
		
	img {
		max-width: 100% !important;
	}
	
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	
	h2,
	h3 {
		page-break-after: avoid;
	}
	}
    

	/* Base --------------------------- */

	@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 400;
	}

	body {
		font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
        line-height: 1.75;
        font-feature-settings: 'palt' 1;
        -moz-osx-font-smoothing: grayscale;
        letter-spacing: 0.03em;
		background:#fff;
        color: #1f1f1f;
        font-weight: normal;
		font-weight: 600;
	}

	h1, h2 {
		padding: 0;
		margin: 0;
	}

	h2, h3 {
		text-align: center;
	}

	ul, li {
		padding: 0;
		margin: 0;
		list-style: none;
	}

	p {
		margin: 50px 100px;
	}

	a {
		color: #09F;
	}

	a:hover {
		text-decoration: none;
	}

	a:hover img {
		-webkit-filter: brightness(1.2);
		 -moz-filter: brightness(1.2);
		 -o-filter: brightness(1.2);
		 -ms-filter: brightness(1.2);
		 filter: brightness(1.2);
	}

	header {
		text-align: center;
	}

	.wrap {
        width: 70%;
        margin: 0 auto;
        max-width: 1000px;
	}

	footer {
		margin: 0;
		clear: both;
		background: #292929;
		padding: 30px 0;
		text-align: center;
		color: #FFFFFF;
		font-size: 60%;
		line-height: 2.0em;
	}

	footer a {
		color: #FFFFFF;
	}
    
    footer .caution{
        background: none;
        padding: 0;
        margin: 30px auto;
        line-height: 1.7em;
        border: none;
        color: #fff;
        width: 90%;
        font-size: 0.7em;
        max-width: 600px;
    }
    
    footer .caution h3{
        margin: 0 0 5px;
        font-weight: normal;
    }
    
    footer .caution p{
        font-size: 1.2em;
        margin: 0 0 20px;
    }

	address {
		font-style: normal;
		color: #555555;
	}
	
	.sen {
		border-bottom: 2px #292929 dashed;
		padding-bottom: 5px;
		display: block;
	}	
	
	.title {
		width: 60%;
		margin: 0 auto 50px;
		max-width: 900px;
	}

	/* margin padding ----------------- */

    .mt0 {margin-top:0 !important;}
    .mt10 {margin-top:10px !important;}
    .mt20 {margin-top:20px !important;}
    .mt30 {margin-top:30px !important;}
    .mt40 {margin-top:40px !important;}
    .mt50 {margin-top:50px !important;}
    .ml0 {margin-left:0 !important;}
    .ml10 {margin-left:10px !important;}
    .ml20 {margin-left:20px !important;}
    .ml30 {margin-left:30px !important;}
    .ml40 {margin-left:40px !important;}
    .ml50 {margin-left:50px !important;}
    .mr0 {margin-right:0 !important;}
    .mr10 {margin-right:10px !important;}
    .mr20 {margin-right:20px !important;}
    .mr30 {margin-right:30px !important;}
    .mr40 {margin-right:40px !important;}
    .mr50 {margin-right:50px !important;}
    .mb0 {margin-bottom:0 !important;}
    .mb10 {margin-bottom:10px !important;}
    .mb20 {margin-bottom:20px !important;}
    .mb30 {margin-bottom:30px !important;}
    .mb40 {margin-bottom:40px !important;}
    .mb50 {margin-bottom:50px !important;}
    .pt0 {padding-top:0 !important;}
    .pt10 {padding-top:10px !important;}
    .pt20 {padding-top:20px !important;}
    .pt30 {padding-top:30px !important;}
    .pt40 {padding-top:40px !important;}
    .pt50 {padding-top:50px !important;}
    .pt70 {padding-top:70px !important;}
    .pl0 {padding-left:0 !important;}
    .pl10 {padding-left:10px !important;}
    .pl20 {padding-left:20px !important;}
    .pl30 {padding-left:30px !important;}
    .pl40 {padding-left:40px !important;}
    .pl50 {padding-left:50px !important;}
    .pr0 {padding-right:0 !important;}
    .pr10 {padding-right:10px !important;}
    .pr20 {padding-right:20px !important;}
    .pr30 {padding-right:30px !important;}
    .pr40 {padding-right:40px !important;}
    .pr50 {padding-right:50px !important;}
    .pb0 {padding-bottom:0 !important;}
    .pb10 {padding-bottom:10px !important;}
    .pb20 {padding-bottom:20px !important;}
    .pb30 {padding-bottom:30px !important;}
    .pb40 {padding-bottom:40px !important;}
    .pb50 {padding-bottom:50px !important;}
    .pb70 {padding-bottom:70px !important;}


	/* default */
	
	.center {
        text-align: center !important;
    }
    
	.right {
        text-align: right !important;
    }

    .bold {
        font-weight: bold !important;
    }

	.bg_re {
		background: #bc0a29 !important;
	}
    
	.bg_bl{
		background: #185e9b !important;
	}
    
    .bg_wh{
        background: #FFF !important;
    }
    
	.bg_gr{
		background: #1f1f1f !important;
	}
    
	.bg_lg{
		background: #bfeac1 !important;
	}
    
	.bg_ye{
		background: #FAF71B !important;
	}
    
    .bg_grd{
        background: -moz-linear-gradient(left,#ff7f3f,#ff176b);
        background: -webkit-linear-gradient(left, #ff7f3f, #ff176b);
        background: linear-gradient(to left, #ff7f3f,#ff176b);
    }
    
    .b-gr {
        border: 5px solid #00AB07;
    }
     
    .b-bl {
        border: 5px solid #000;
    }

    .underline {
        text-decoration: underline !important;
    }
    
    .underline_dash {
        border-bottom: dashed 1.5px;
        padding: 0 0 5px;
    }
    
    .fc-bl {
        color: #59a2d9 !important;
    }
    
    .fc-or {
        color: #FF6425 !important;
    }
    
    .fc-wh {
        color: #fff !important;
    }
    
    .fc-re {
        color: #DA0509 !important;
    }
    
    .fc-ye{
        color: #FFFC4F !important;
    }
    
    .fw-400{
        font-weight: 400 !important;
    }
    
    .fw-500{
        font-weight: 500 !important;
    }
    
    .fw-600{
        font-weight: 600 !important;
    }

    .strikeline {
        text-decoration: line-through !important;
    }
    
	.b-shadow{
        box-shadow: 5px 5px 25px rgba(0, 0, 0, 0.25);
    }
    
	.bb-shadow{
        box-shadow: 10px 10px 0px rgba(0, 0, 0, 0.15);
    }
    
    .bd-wh{
        border: solid 7px #fff;
    }
   
    .fsG{
        font-size: 0.8em;
    }

    .fsSS {
      font-size: .75em;
    }

    .fsS {
        font-size: 70% !important;
        line-height: 1.7em;
    }
    
    .fsM {
        font-size: 150% !important;
    }
    
    .fsL {
        font-size: 180% !important;
    }
    
    .fsLL {
        font-size: 250% !important;
        line-height: 1.3em;
    }

	.sp {
		display: none;
	}

	.pc {
		display: inline;
	}


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

	/* Base --------------------------- */

	body {
		background: none;
		width: 100%;
	}

	.wrap {
		width: 90%;
		margin: 0 5%;
	}

	img {
		width: 100%;
		height: auto;
	}

	p {
		margin: 7% 5%;
	}

	header{
		width:100%;
		margin:0;
		padding:0;
		z-index:0;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	footer {
		margin: 0;
		padding: 8% 0 8%;
	}
	
	.title {
		width: 90%;
		margin: 0 auto 5%;
		max-width: 90%;
	}
    
    .bd-wh {
        border: solid 5px #fff;
    }

    .mt0 {margin-top:0% !important;}
    .mt10 {margin-top:1% !important;}
    .mt20 {margin-top:2% !important;}
    .mt30 {margin-top:3% !important;}
    .mt40 {margin-top:4% !important;}
    .mt50 {margin-top:5% !important;}
    .ml10 {margin-left:1% !important;}
    .ml20 {margin-left:2% !important;}
    .ml30 {margin-left:3% !important;}
    .ml40 {margin-left:4% !important;}
    .ml50 {margin-left:5% !important;}
    .mr10 {margin-right:1% !important;}
    .mr20 {margin-right:2% !important;}
    .mr30 {margin-right:3% !important;}
    .mr40 {margin-right:4% !important;}
    .mr50 {margin-right:5% !important;}
    .mb0 {margin-bottom:0% !important;}
    .mb10 {margin-bottom:1% !important;}
    .mb20 {margin-bottom:2% !important;}
    .mb30 {margin-bottom:3% !important;}
    .mb40 {margin-bottom:4% !important;}
    .mb50 {margin-bottom:5% !important;}
    .pt10 {padding-top:1% !important;}
    .pt20 {padding-top:4.5% !important;}
    .pt30 {padding-top:3% !important;}
    .pt40 {padding-top:4% !important;}
    .pt50 {padding-top:5% !important;}
    .pt70 {padding-top:7% !important;}
    .pl0 {padding-left:0 !important;}
    .pl20 {padding-left:2% !important;}
    .pl30 {padding-left:3% !important;}
    .pl40 {padding-left:4% !important;}
    .pl50 {padding-left:5% !important;}
    .pr10 {padding-right:1% !important;}
    .pr20 {padding-right:2% !important;}
    .pr30 {padding-right:3% !important;}
    .pr40 {padding-right:4% !important;}
    .pr50 {padding-right:5% !important;}
    .pb10 {padding-bottom:1% !important;}
    .pb20 {padding-bottom:2% !important;}
    .pb30 {padding-bottom:3% !important;}
    .pb40 {padding-bottom:4% !important;}
    .pb50 {padding-bottom:5% !important;}
    .pb70 {padding-bottom:7% !important;}
	.spmb0{margin-bottom:0% !important;}
	.sppb0 {padding-bottom:0 !important;}
    
    .sp {
        display: inline;
    }

    .pc {
        display: none;
    }
  
	}
		
	/* jumpbtn ------------------------ */
	
	#jump {
        padding: 0;
        width: 250px;
        position: fixed;
        right: 75px;
        bottom: 20px;
    }
    
    #jump a {
        padding: 30px 23px 25px 30px;
        display: block;
        background-color: #1ca800;
        background-size: 100%;
        background-image: -webkit-gradient(linear, left top, left bottom, from(#1ca800), to(#0b8e14));
        background-image: linear-gradient(to bottom, #1ca800 0%, #0b8e14 100%);
        width: 100%;
        text-align: center;
        color: #fff;
        border-radius: 10px;
        text-decoration: none;
        font-size: 18px;
        font-size: 1.3em;
        box-shadow: 0 8px 0 #176802;
        line-height: 1.4;
        font-weight: bold;
        letter-spacing: -0.05em;
        text-shadow: 0px 1px 0px #333;
        -webkit-transition: all .3s ease;
        transition: all .3s ease;
        cursor: pointer;
    }

	#jump a:hover {
		box-shadow: none;
		transform: translate3d(0, 10px, 0);
	}
	
	@media only screen and (max-width: 767px) {

	#jump {
        padding: 4% 0 5%;
        width: 100%;
        position: fixed;
        bottom: 0;
        margin: 0;
        right: 0;
        border: 0;
		z-index: 100000000000;
		background-color: rgba(0,0,0,0.9);
    }
    
    #jump a {
        margin: 0 auto;
        padding: 3% 0 2%;
        width: 94%;
        font-size: 1.0rem;
        border-radius: 150px;
        box-shadow: 0 5px 0 #176802;
    }	
    
	#jump a:hover {
		box-shadow: none;
		transform: translate3d(0, 5px, 0);
	}

	}
	
	/* caution  ----------------------- */
		
	.caution {
		background: rgba(255,255,255,1);
		padding: 50px;
		margin: 30px auto 10px;
		line-height: 1.7em;
		border: 1px dotted #333;
		color: #000;
		width: 70%;
	}
    
    .c_t {
        margin: 100px auto 10px;
    }

	.caution p {
		margin: 20px 0;
        font-size: 16px;
	}

	.caution h2 {
        margin-bottom: 10px;
        padding: 5px 5px 15px 0;
        font-size: 1.3rem;
        font-weight: bold;
        border-bottom: 1px dotted #333;
        border-left: 5px solid #b90404;
        text-align: center;
	}
	
	@media screen and (max-width: 767px) {
	
	.caution {
        width: 80%;
        margin: 5% auto;
        padding: 8% 8% 4%;
	}
    
    .c_t {
        margin: 13% auto 0%;
    }
    
    .caution h2 {
        margin-bottom: 2%;
        padding: 1% 1% 1.5% 0;
        font-size: 0.9rem;
    }
    
	.caution p {
        font-size: 15px;
        line-height: 1.8;
    }
	
	}
	
	/* Sub ---------------------------- */

	.sub .wrap {
		padding: 70px 0 20px;
		margin: 50px auto;
		font-size: 90%;
	}

	.sub h1 {
		text-align: center;
	}

	.sub h2 {
		margin: 50px 100px -30px;
	}

	.sub p {
		margin: 50px 100px;
	}

	.sub table {
		width: 700px;
		margin: 50px 100px;
	}

	.sub table th {
		width: 24%;
		padding: 3% 0;
		border-bottom: solid 1px #DDDDDD;
	}

	.sub table td {
		width: 68%;
		padding: 3% 4%;
		border-bottom: solid 1px #DDDDDD;
	}

	.sub ol {
		padding: 0 20px;
		margin: 50px 100px;
	}

	.sub ol li {
		list-style: decimal;
		line-height: 1.5em;
		font-size: 80%;
	}


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

	.sub .wrap {
		padding: 10% 0 3%;
		margin: 0;
		font-size: 90%;
		line-height: 1.5em;
	}

	.sub h1 {
		text-align: center;
		font-size: 150%;
	}

	.sub h2 {
		margin: 7% 5% -4%;
		font-size: 120%;
	}

	.sub p {
		margin: 7% 5%;
	}

	.sub table {
		width: 95%;
		margin: 7% 2%;
		border-bottom: solid 1px #EEEEEE;
	}

	.sub table th {
		display: block;
		clear: both;
		width: 100%;
		background: #FAFAFA;
		padding: 0.5% 0;
		border: solid 1px #EEEEEE;
		border-bottom: none;
	}

	.sub table td {
		display: block;
		clear: both;
		width: 90%;
		padding: 2% 5%;
		border: solid 1px #EEEEEE;
		border-bottom: none;
	}

	.sub ol {
		padding: 0 5%;
		margin: 5%;
	}
    
	}

    /* background --------------------- */

	.bg_p {
		padding: 100px 0;
	}
	
    .bg_fixed{
            background-attachment: fixed;
            background-repeat: no-repeat;
            background-position: center;
            background-size: cover;
    }
    
    .bg_cover{
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        top: 0;
    }
  
	@media screen and (max-width: 767px) {

	.bg_p {
		padding: 8% 0;
	}

    .bg_fixed,
    .bg_cover {
        background-attachment: initial;
        background-size: contain;
    }

	}
        
    /* flex --------------------------- */
    
    .d-f {
        flex-wrap: wrap;
        display: flex;
        align-items: flex-start;
        margin: 0;
    }
    
    /* justify-content */
    .jc-c { justify-content: center; }
    .jc-fe { justify-content: flex-end; }
    .jc-fs { justify-content: flex-start; }
    .jc-sa { justify-content: space-around; }
    .jc-sb { justify-content: space-between; }
    
    .item_contents{
        width: 46%;
    }
	
	.eco02 .f_item,
	.service02 .f_item {
		width: 24%;
	}

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

	.fd-re{ display: flex;flex-direction: column-reverse; }
	.item_contents { width: 100%; margin: 3% 0 5%; }
	.d-f-sp { display: block; }
	.eco02 .f_item, .service02 .f_item { width: 90%; margin: 8% 5% 0; }
	
	}

	/* head --------------------------- */

    .head{
        background-image: url("../img/top_bg.jpg");
        padding: 0 0 150px;
    }
    
    .head .wrap{
        margin-top: 80px;
    }
    

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

    .head {
        background: url("../img/top_bg_sp.jpg") no-repeat center #fff;
        background-size: contain;
        padding: 0 0 10%;
    }
    
    .head .wrap{
        margin-top: 4%;
    }

	}
	
	/* fast --------------------------- */

	.first {
		position: relative;
	}
	
	.first .photo_left,
	.first .photo_right {
		position: absolute;
		width: 300px;
		top: 12%;
	}
	
	.first .photo_left {
		left: 50px;
	}
	
	.first .photo_right {
		right: 50px;
	}

	.first .logo {
		width: 400px;
		margin: 0 auto;
	}
	
	.first .text {
		width: 500px;
		margin: 0 auto;
	}
	
	@media screen and (max-width: 767px) {
	
	.first .logo {
		width: 70%;
	}
	
	.first .text {
		width: 90%;
		margin: 7% auto 0 !important;
	}
	
	}
    
	/* car_body ------------------------ */

	.car_body {
		margin-top: 100px;
	}

	.car_body_img {
		width: 400px;
	}
	
	@media screen and (max-width: 767px) {
	
	.car_body {
		margin-top: 15%;
	}
	
	.car_body_img {
		width: 80%;
		margin: 3% auto;
	}
	
	}
	
	/* movie --------------------------- */

	.movie {
		position: relative;
		background-image: url("../img/mv/mv_bg.jpg");
		background-repeat: no-repeat;
		background-size: 100%;
	}
	
	.movie_title {
		width: 200px;
		margin: 0 auto 30px;
	}
	
	@media screen and (max-width: 767px) {
	
	.movie {
		background-color: #fff;
		background-position: bottom;
	}
	
	.movie_title {
		width: 41%;
		margin: 0 auto 5%;
	}
	
	}
	
	/* eco01 --------------------------- */
	
	.eco01 {
		padding: 100px 0 130px;
	}
		
	.eco01 h3 {
		text-align: left;
		margin: 0 0 30px 50px;
		letter-spacing: 3px;
	}
	
	.eco01 p {
		margin: 0 0 0 50px;
	}
	
	.eco01 .d-f {
		justify-content: space-between;
		margin-top: 80px;
	}
	
	.eco01 .item_contents {
		width: 46%;
	}
	
	@media screen and (max-width: 767px) {
	
	.eco01 {
		padding: 8% 0 12%;
	}
	
	.eco01 .item_contents {
		width: 100%;
	}
	
	.eco01 .d-f {
		margin-top: 0;
	}
	
	}
	
	/* eco02 --------------------------- */
	
	.eco02 {
		background-image: url("../img/sky_bg.jpg");
		background-size: 100%;
		background-repeat: no-repeat;
		position: relative;
	}
	
	.eco02_title {
		position: absolute;
		width: 350px;
		top: -28%;
		/*left: 41.2%;*/
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
	}
	
	@media screen and (max-width: 767px) {
	
	.eco02 {
		background-repeat: repeat;
	}
	
	.eco02_title {
		width: 74%;
		top: -10%;
	}
	
	}
	
	/* eco ----------------------------- */

	.eco03 .item_contents {
		width: 47%;
	}
	
	@media screen and (max-width: 767px) {
	
	.eco03 .item_contents {
		width: 100%;
		margin: 0;
	}
	
	}
	
	/* detail -------------------------- */
	
	.detail {
		background-color: #f5f8fa;
		padding: 100px;
	}
	
	.detail .item_contents {
		width: 20%;
	}
	
	.detail .item_contents h4,
	.detail .item_contents p {
		text-align: center;
	}
	
	.detail .item_contents h4 {
		margin: 30px 0 10px;
		font-size: 1.2em;
		font-weight: 600;
		letter-spacing: 3px;
	}
	
	.detail .item_contents p {
		margin: 0;
	}
	
	@media screen and (max-width: 767px) {
	
	.detail {
		padding: 8% 0;
	}
	
	.detail .item_contents {
		width: 47%;
		margin: 0;
	}
	
	.detail .item_contents:nth-of-type(n+3) {
		margin-top: 5%;
	}

	}
	
	/* slope ---------------------- */
	
	.slope h3 {
		margin: 0 0 30px 50px;
		text-align: left;
	}
	
	.slope p {
		margin: 0 0 0 50px;
	}
	
	.slope .f-item {
		width: 23%;
	}
	
	/* safety --------------------- */

	.safety {
		background-color: #f5f8fa;
		background-size: 100%;
	}
	
	.safety .wrap {
		margin: 80px auto 0;
	}
	
	.safety_img {
		width: 80%;
		margin: 0 auto;
	}
	
	.safety .main_img {
		width: 100%;
	}	
	
	.safety .sub_img img {
		/*flex-direction: column;*/
		width: 24.7%;
	}
	.safety img {
		width: 100%;
		height: auto;
		vertical-align: bottom;
	}

	.safety section {
		width: 100%;
		margin-right: auto;
		margin-left: auto;
		max-width: 900px;
	}

	.safety section .sub_img dl {
		width: 100%;
		margin: 0px;
		padding: 0px;
	}

	.safety section .sub_img dl dt {
		width: 100%;
		margin: 0 0 20px 0;
		padding: 0px;
		vertical-align: top;
		border: 10px solid #FFF;
		box-sizing: border-box;
	}

	.safety section .sub_img dl dt img {
		cursor:pointer;
	}

	.safety section .sub_img dl dd {
		display: table-cell;
		margin: 0px;
		padding: 0px;
	}

/*	.safety .select img {
		border: 3px solid #000 !important;
		box-sizing: border-box;
	}*/
	
	.safety .d-f {
		justify-content: space-between;
	}
	
	.safety-f .f_item {
		width: 30%;
	}
	
	.safety .sub_img img {
		margin-top: 10px;
		width: 24.7%;
	}
	
	@media screen and (max-width: 767px) {
	
	.safety .wrap {
		margin: 8% 5%;
	}
	
	.safety section {
		width: 100%;
	}
	
	.safety .main_img {
		width: 100%;
	}
	
	.safety .sub_img_sp .f_item {
		width: 30%;
	}
	
	.safety-f .f_item {
		width: 100%;
		margin-top: 4%;
	}
	
	.safety_img {
		width: 100%;
		margin: 0 auto;
	}
	
	.safety .sub_img img {
		width: 24%;
		margin-top: 5px;
	}
	
	}
	
	/* specification --------------------- */
	
	.specification .btn {
		width: 70%;
		margin: 50px auto 0;
	}

	.gradient2 {
		/*ボタンの形状*/
		display: inline-block;
		color: #fff;
		padding: 18px 0;
		border-radius: 100px;
		text-decoration: none;
		outline: none;
		/*背景の色と形状*/
		background: linear-gradient(to right, #1dd5e6 0%, #44b2f6 100%);
		/*box-shadow: 0 15px 15px rgba(82,160,253,0.4);*/
		/*アニメーションの指定*/ 
		transition: all 0.3s ease-out;
		width: 100%;
		text-align: center;
	}

	/*hoverした際のスケールで全体を縮小*/
	.gradient2:hover{
		transform: scale(0.95);
	}
	
	/* btn_area ---------------------------- */

	.btn_area {
		background-image: url("../img/btn_area_bg.jpg");
		background-size: 100%;
		background-repeat: no-repeat;
		border-top: 5px solid;
		border-image: linear-gradient(to left, #1dd5e6, #44b2f6) 1;
		padding: 80px 0;
	}
	
	.btn_area .logo_area {
		width: 350px;
		margin: 0 auto;
	}
	
	.btn_area .btn {
		width: 60%;
		margin: 30px auto 20px;
		max-width: 800px;
	}
	
	.btn_area .gradient2 {
		/*ボタンの形状*/
		display: inline-block;
		color: #fff;
		padding: 45px 0 40px;
		border-radius: 100px;
		text-decoration: none;
		outline: none;
		/*背景の色と形状*/
		background: linear-gradient(to right, #1dd5e6 0%, #44b2f6 100%);
		box-shadow: 0 15px 15px rgba(45,94,104,0.08);
		/*アニメーションの指定*/ 
		transition: all 0.3s ease-out;
		width: 100%;
		text-align: center;
		outline : 1px solid #FFFFFF; /* 線の太さ・線状・色 */
		outline-offset : -10px; /* どれだけ内側に線を表示したいかを負の値で指定 */
		font-size: 1.4em;
		letter-spacing: 13px;
	}

	/*hoverした際のスケールで全体を縮小*/
	.btn_area .gradient2:hover{
		transform: scale(0.95);
	}
	
	@media screen and (max-width: 767px) {
	
	.specification .btn {
		width: 90%;
		margin: 5% auto 7%;
	}
	
	.gradient2 {
		padding: 4% 0;
	}
	
	.btn_area .btn {
		width: 90%;
		margin: 5% 5% 1%;
		max-width: 90%;
	}
	
	.btn_area .gradient2 {
		padding: 5% 0;
		width: 100%;
		outline-offset: -7px;
		font-size: 1rem;
		letter-spacing: 5px;
		box-shadow: 0 10px 10px rgba(45,94,104,0.08);
	}
	
	.btn_area .logo_area {
		width: 70%;
		margin: 0 auto;
	}
	
	.btn_area {
		padding: 8% 0;
	}
	
	}
	
	/* bservice01 -------------------------- */
	
	.service01 {
		background-image: url("../img/service/bg01.jpg");
		background-size: 100%;
	}
	
	.service01 .text_area {
		background-color: #fff;
		border-radius: 30px;
		padding: 50px 100px;
		text-align: center;
	}
	
	.service01 .wrap {
		width: 60%;
		max-width: 900px;
	}
	
	.service01 .text_area h3 {
		border-bottom: 2px dashed #292929;
		font-size: 1.3em;
		letter-spacing: 3px;
		padding-bottom: 30px;
		line-height: 1.5;
	}
	
	@media screen and (max-width: 767px) {
	
	.service01 {
		background-color: #fff;
		background-image: none;
		background-position: top;
		padding: 10% 0 8%;
		background-repeat: no-repeat;
	}
	
	.service01 .wrap {
		width: 85%;
		max-width: 100%;
	}

	}
	
	/* service02 --------------------------- */

	.service02 {
		background-image: url("../img/service/bg02.jpg");
		background-size: 100%;
	}
	
	@media screen and (max-width: 767px) {
	
	.service02 {
		background-image: url("../img/sky_bg.jpg");
		background-repeat: repeat;
	}
	
	}
	
	
	