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

/*--------------------- 共通処理 ---------------------*/

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box
}


h1,h2,h3,h4,h5,h6{
	font-weight: 300;
	font-style: normal;
	color: #122131;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	
}

html {
	font-size: 62.5%;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-style: normal;
	color: #122131;
}


p {
	font-size: 1.45rem;
	line-height: 1.9em;
	color: #122131;
	text-align: justify;
	
}


a{
	font-size: 1.5rem;
	line-height: 2.8rem;
	color: #122131;
	position: relative;
}

a.line:hover{
	color:#0961AE;
}

a.line::after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    bottom: 0;
    left: 10%;
    /*線の形状*/
    width: 80%;
    height: 2px;
    background:#0961AE;
    /*アニメーションの指定*/
    transition: all .3s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: left top;/*左上基点*/
}

a.line:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
	visibility: hidden;
}

.mt-10{
    margin-top: 10px;
}

.mt-20{
    margin-top: 20px;
}

.mt-30{
    margin-top: 30px;
}

.mt-40{
    margin-top: 40px;
}

.mt-50{
    margin-top: 50px;
}

.mt-60{
    margin-top: 60px;
}

.mt-70{
    margin-top: 70px;
}

.mt-80{
    margin-top: 80px;
}

.mt-90{
    margin-top: 90px;
}

.mt-100{
    margin-top: 100px;
}

.mt-110{
    margin-top: 110px;
}

.mt-120{
    margin-top: 120px;
}

.mt-160{
    margin-top: 160px;
}

.mb-40{
    margin-bottom: 40px;
}

.spbr{
    display: none;
}

.nobr{
    display: block;
}

.inner_800 {
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 0px 20px;
	height: 100%;
}



.inner_1100 {
    width: 100%;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    padding: 0px 20px;
	height: 100%;
}



.flex{
	display: flex;
}


header{
	background-color: #fff;
	position: fixed;
	z-index: 3;
	width: 100%;
	height:90px; 
}

header a.pc_logo{
	display: block;
    background-color: #fff;
    width: 240px;
    padding: 35px;
    border-radius: 0px 0px 40px 0px;
    height: 170px;
}

header a.pc_logo img{
	width: 100%;
    height: 100%;
    object-fit: contain;
    margin: 0 auto;
}

header a.sp_logo{
	display: none;
}

header .Pc_menu{
	height: 90px;
    width: 100%;
    justify-content: flex-end;
}

header .Pc_menu a.tepco{
	display: flex;
    align-items: center;
    width: 100px;
    height: auto;
	margin-right: 25px;
}

header .Pc_menu a.tepco img{
	width: 100%;
    padding: 10px;
}

header .Pc_menu ul{
	align-items: center;
	height: 90px;
	display: flex;
}

header .Pc_menu ul li{
	list-style: none;
	margin-right: 25px;
}

header .Pc_menu ul li a{
	text-decoration:none;
	display: inline-block;
}

header .Pc_menu ul li:nth-child(8) a{
    padding: 10px 25px;
    border-radius: 50px;
    background-image: linear-gradient(0deg, rgba(0, 167, 220, 1) 0%, rgba(9, 97, 174, 1) 100%);
    color: #fff;
}

header .Sp_menu{
	display: none;
}


#g-nav{
    position:fixed;
    z-index: 999;
	top:-120%;
    left:0;
	width:100%;
    height: 100vh;
	background:#fff;
	transition: all 0.6s;
}


#g-nav.panelactive{
    top: 0;
}

#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
	padding: 0px 20px;
}


#g-nav ul {
	z-index: 999;
    /*position: absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);*/
}



#g-nav li{
	list-style: none;
    text-align: center;
	border-bottom: solid 1px #ddd;
}

#g-nav li:last-child{
	border-bottom: none;
}


#g-nav li a{
	color: #122131;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight:300;
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:10px;
	right: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #122131;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

 h2.headline{
	font-family: "calibri", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 7.2rem;
	line-height: 0.7em;
	-webkit-background-clip: text;
    color: transparent;
    background-image: linear-gradient(0deg, rgba(0, 167, 220, 1) 0%, rgba(9, 97, 174, 1) 100%);
    display: inline-block;
}

h2.headline span{
	font-size: 1.6rem;
    display: block;
    line-height: 4em;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	color: #122131;
	font-weight: 400;
    padding-left: 2%;
}

a.common_btn{
	margin-top: 30px;
    display:inline-block;
    text-decoration: none;
    font-weight: 700;
	position: relative;
}

a.common_btn:hover {
	color: #0961AE;
}

a.common_btn::after{
	content: "";
    display:inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: #0961AE;
    position: absolute;
    right: -40px;
    bottom: 7px;
    transition: background-color .3s, transform .3s;
}

a.common_btn:hover:after {
	color: #0961AE;
    background-color: #0870CB;
    transform: scale(1.5);
}

.position{
	position: relative;
}

footer{
	background: linear-gradient(180deg, #E1F0F8 0%, #E1F0F8 30%, #fff 30%, #fff 100%);
	padding: 60px 0px 10px 0px;
}

footer .contact{
	background: url("../img/footer_bacimg.jpg");
	background-color:rgba(9,97,174,0.8);
	background-blend-mode:Multiply;
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 310px;
	border-radius: 30px;
	padding: 86px 93px;
	align-items: center;
}


footer .contact p,
footer .contact a,
footer .contact h2{
	color: #fff;
}

footer .contact h2{
	font-size: 6.2rem;
	font-family: "calibri", sans-serif;
	line-height: 0.5em;
	margin-bottom: 10px;
}

footer .contact h2 span{
	font-size: 1.6rem;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	padding-left: 5px;
}

footer .contact .txt_area1{
	width: 60%;
    padding-right: 5%;
}


footer .contact .txt_area1 p{
	font-size: 1.3rem;
    line-height: 1.6em;
}

footer .contact .txt_area2{
	width: 40%;
	padding-left: 5%;
	text-align: center;
	border-left: solid 1px #fff;
}

footer .contact .txt_area2 p{
	text-align: center;
}

footer .contact .txt_area2 a.tel{
	font-size: 4.5rem;
	font-family: "calibri", sans-serif;
	line-height: 0.5em;
	text-decoration: none;
	display: block;
    margin-bottom: 0.37em;
}

footer .contact .txt_area2 a.btn{
	text-decoration: none;
    border: solid 1px #fff;
    display: block;
    padding: 10px;
    border-radius: 10px;
    margin-top: 20px;
}

footer ul{
	justify-content: space-evenly;
	width: 87%;
    margin: 0 auto;
    margin-top: 40px;
}

footer ul li{
	list-style: none;
}

footer ul li a{
	text-decoration: none;
	display: block;
}

footer .logo{
	margin: 0 auto;
    display: block;
    text-align: center;
    width: 200px;
	margin-top: 80px;
}

footer .logo a.daido img{
	width: 100%;
}

footer .logo a.tepco{
	display: block;
    margin-top: 20px;
}

footer .logo a.tepco img{
	width: 40%;
}


footer ul.end{
	width: 340px;
	align-items: center;
}

footer ul.end li a{
	font-size: 1.3rem;
    text-decoration: underline;
}

footer ul.end li small{
	font-size: 1.3rem;
}


/*リンクの形状*/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	border: solid 1px #0961AE;
	border-radius: 50px;
	width: 60px;
	height: 60px;
	color: #0961AE;
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:0.6rem;
	transition:all 0.3s;
}

/* 矢印 */
#page-top a .arrow{
   width: 10px;
   height: 10px;
   border-top: 3px solid #0961AE;
   border-right: 3px solid #0961AE;
   transform: rotate(-45deg);
   margin-top: 5px;
}

#page-top a:hover .arrow{
   border-top: 3px solid #fff;
   border-right: 3px solid #fff;	
}

#page-top a:hover{
	background: #0961AE;
	border: none;

}

/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right: 10px;
	bottom:10px;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}

/*--------------------- TOPページ ---------------------*/



/*スクロールダウン全体の場所*/
.scrolldown{
	position:absolute;
	bottom:90px;
    left:2%;
	z-index: 1;
}

.scrolldown span{
	position: absolute;
	left: -7px;
    bottom: 129px;
	color: #122131;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.scrolldown:before {
    content: "";
    position: absolute;
    bottom:0;
    left:-4px;
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#0961AE;
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}


/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:100px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown:after{
	content:"";
	position: absolute;
	bottom:0;
	left:0;
	width:1px;
	height: 110px;
	background:#122131;
}

#Dai_top section.module00{
	
}

#Dai_top section.module00 ul.Top_slider{
	width: 95%;
    height: 90vh;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    right: 0;
    margin-left: 5%;
	border-radius: 0px 0px 0px 60px;
}


/*==================================================
ファーストビュー：スライダーのためのcss
===================================*/

/*　背景画像設定　*/

.Top_slider .slider-item01 {
    background:url(../img/Top_slide_img01.jpg);
}

.Top_slider .slider-item02 {
    background:url(../img/Top_slide_img02.jpg);
}

.Top_slider .slider-item03 {
    background:url(../img/Top_slide_img03.jpg);
}

.Top_slider .slider-item04 {
    background:url(../img/Top_slide_img04.jpg);
}

.Top_slider .slider-item05 {
    background:url(../img/Top_slide_img05.jpg);
}

.Top_slider .slider-item06 {
    background:url(../img/Top_slide_img06.jpg);
}

.Top_slider .slider-item07 {
    background:url(../img/Top_slide_img07.jpg);
}

.Top_slider .slider-item08 {
    background:url(../img/Top_slide_img08.jpg);
}

.Top_slider .slider-item {
    width: 100%;
    height:90vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
	border-radius: 0px 0px 0px 60px;
}

/*矢印の設定*/

.Top_slider .slick-prev, 
.Top_slider .slick-next {
    display: none;
}


/*ドットナビゲーションの設定*/

.Top_slider .slick-dots {
	display: none;
}

.Top_slider .slick-dots li{
	display: none;
}

#Dai_top .back_color{
	    background: linear-gradient(180deg, #FFF 0%, #FFF 90%, #E1F0F8 90%, #E1F0F8 100%);
	width: 100%;
}

#Dai_top section.module00 .Top_title{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	width: 100%;
	text-align: center;
}



#Dai_top section.module00 .Top_title h1 img.pc{
	width: 620px;
	height: auto;
}

#Dai_top section.module00 .Top_title .Sp_title{
	display: none;
}



#Dai_top section.module00 .Top_title span.h2{
	color: #fff;
	font-size: 3.0rem;
	text-align: center;
	margin-top: 10px;
    display: block;
}

#Dai_top section.module00 .Top_title span.h3{
	color: #fff;
	font-size: 2.0rem;
	text-align: center;
	margin-top: 0.95em;
	font-weight: 400;
	display: block;
}

#Dai_top section.module01{
	background: linear-gradient(90deg, #E1F0F8 0%, #E1F0F8 70%, #fff 70%, #fff 100%);
}

#Dai_top section.module01 .content{
	padding: 120px 0px;
}


#Dai_top section.module01 .txt_area{
	width: 50%;
	float: left;
	padding-right: 6%;
}


#Dai_top section.module01 .txt_area h3{
	font-size: 2.2rem;
    font-weight: 600;
    line-height: 1.5em;
    margin-bottom: 30px;
    margin-top: 20px;
}

#Dai_top section.module01 .img_area{
	width: 50%;
    height: 430px;
    border-radius: 20px 0px 0px 20px;
    background: url("../img/Top_img01.jpg");
    background-size: cover;
    background-position: center center;
    overflow: hidden;

}






/*==================================================
スライダーのためのcss
===================================*/
.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 0px;/*スライド左右の余白調整*/
}


#Dai_top section.module02{
    margin: 120px 0px;
}


#Dai_top section.module02 .Head_txt_area{
    margin-bottom: 80px;
}


#Dai_top section.module02 .Head_txt_area p{
    margin-left: 5%;
}


#Dai_top section.module02 .Service .txt_area{
    width: 50%;
    padding-right: 5%;
}

#Dai_top section.module02 .counter{
   counter-reset:number; 
}

#Dai_top section.module02 .Service .txt_area h3{
    font-size: 2.4rem;
    font-weight: 600;
    margin-bottom: 25px;
    position: relative;
    padding-left: 12%;
    
}

#Dai_top section.module02 .Service .txt_area h3:before{
    position: absolute;
    counter-increment: number;
    content: counter(number,decimal-leading-zero);
    display:inline-block;
    border: solid 1px #0961AE;
    color: #0961AE;
    font-family: "calibri", sans-serif;
    font-weight:bold;
    font-size: 2.4rem;
    border-radius: 50%;
    left: 0;
    width: 45px;
    height: 45px;
    line-height: 42px;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#Dai_top section.module02 .Service .txt_area ul{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 8px;
    column-gap: 16px;
    margin-top: 60px;
}


#Dai_top section.module02 .Service .txt_area ul li{
    list-style: none;
    border: solid 1px #0961AE;

}

#Dai_top section.module02 .Service .txt_area ul li a{
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 5px 0px;
    transition: background-color .7s, transform .7s;
}


#Dai_top section.module02 .Service .txt_area ul li a:hover{
    background-color: #0961AE;
    color: #fff;
}

#Dai_top section.module02 .Service figure.img_area{
    width: 50%;
    height: 430px;
    border-radius: 20px 0px 0px 20px;
}

#Dai_top section.module02 .S_01 figure.img_area{
    background: url("../img/Top_service_img01.jpg");
    background-size: cover;
    background-position: center center;
    overflow: hidden;
}

#Dai_top section.module02 .S_02 figure.img_area{
    background: url("../img/Top_service_img02.jpg");
    background-size: cover;
    background-position: center center;
    overflow: hidden;
}

#Dai_top section.module02 .S_03 figure.img_area{
    background: url("../img/Top_service_img03.jpg");
    background-size: cover;
    background-position: center center;
    overflow: hidden;
}

#Dai_top section.module03{
    background-color:#E1F0F8;
    padding: 120px 0px 60px 0px;
}

#Dai_top section.module03 figure.img_area{
      width: 40%;
    height: 430px;
    border-radius: 0px 20px 20px 0px;
    background: url("../img/Top_Works_img01.jpg");
    background-size: cover;
    background-position: center center;
    overflow: hidden;
    float: left;
    margin-right: 5%;
}

#Dai_top section.module03 .txt_area{
}

#Dai_top section.module03 .txt_area ul{
    justify-content: space-between;
}

#Dai_top section.module03 .txt_area ul li {
    width: 32%;
    list-style: none;
}

#Dai_top section.module03 .txt_area ul li p{
    font-size: 1.2rem;
    line-height: 1.4em;
    margin-top: 0.4em;
}
#Dai_top section.module03 .txt_area ul li img{
    width: 100%;
}

#Dai_top section.module04{
    background-color:#E1F0F8;
    padding: 60px 0px 60px 0px;
}

#Dai_top section.module04 .txt_area{
    width: 30%;
}

#Dai_top section.module04 .txt_area h2.headline{
    width: 100%;
}

#Dai_top section.module04 ul{
    width: 70%;
}

#Dai_top section.module04 ul li{
    background-color: #fff;
    border-radius: 10px;
    align-items: center;
    margin-bottom: 1.8em;
	list-style: none;
}

#Dai_top section.module04 ul li a{
	align-items: center;
	text-decoration: none;
    border-radius: 10px;
    overflow: hidden;
    transition: all .2s;
    padding: 12px 18px;
}

#Dai_top section.module04 ul li a:hover{
    outline: 3px solid #0961AE;
    outline-offset: -3px;
    
}

#Dai_top section.module04 ul li span{
    background: #51A747;
    color: #fff;
    font-size: 1.3rem;
    text-align: center;
	padding: 3px 5px;
    width: 89px;
    margin: 0px 15px;
    border-radius: 10px;
    display: block;
}

#Dai_top section.module04 ul li p{
	font-size: 1.35rem;
}

#Dai_top section.module04 ul li time{
    font-size: 1.3rem;
}

#Dai_top section.module05{
    background-color:#E1F0F8;
    padding: 60px 0px 60px 0px;
}

#Dai_top section.module05 h2{
	text-align: center;
	margin: 0 auto;
    display: block;
}

#Dai_top section.module05 h2 span{
	padding-left: 0%;
}

#Dai_top section.module05 ul{
	margin-top: 40px;
}

#Dai_top section.module05 ul li{
	list-style: none;
	width: 32%;
	margin-top: 0.35em;
	margin-right:2%; 
}

#Dai_top section.module05 ul li:nth-child(3){
	margin-right: 0%;
}

#Dai_top section.module05 ul li a{
    text-decoration: none;
}

#Dai_top section.module05 ul li img{
	width: 100%;
	border-radius: 20px;
    transition: all .2s;
    height: auto;
}

#Dai_top section.module05 ul li img:hover{
    outline: 3px solid #0961AE;
    outline-offset: -3px;
}

#Dai_top section.module05 ul li .txt_area{
	margin-top: 0.3em;
}


#Dai_top section.module05 ul li .txt_area time{
    font-size: 1.3rem;
}



#Dai_top section.module05 ul li .txt_area h5{
	font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 0.5em;
	margin-top: 0.45em;
	line-height: 1.4em;
}

#Dai_top section.module05 ul li .txt_area p{
	font-size: 1.35rem;
    line-height: 1.7em;
}




@media (max-width: 1200px){
	
	header{
		height: 70px;
	}
	
	header .Pc_menu{
		display: none;
	}
	
	header .Sp_menu{
		display: flex;
	}
	
	header .Sp_menu a.tepco{
		display: flex;
    	align-items: center;
    	width: 100px;
    	height: auto;
    	margin-right: 25px;
	}

	header .Sp_menu a.tepco img{
		width: 100%;
    	padding: 10px;
	}
	
	header a.pc_logo{
		display: none;
	}
	
	header a.sp_logo{
		display: block;
		width: 210px;
        padding: 17px 15px;
	}
	
	header a.sp_logo img{
		width: 100%;
	}
	
	header .Sp_menu a.logo{
		display: block;
		width: 40%;
		margin: 0 auto;
		margin-top: 60px;
		margin-bottom: 30px;
	}

	header .Sp_menu a.logo img{
		width: 100%;
	}
	
	header .Sp_menu a.contact{
		padding: 25px 10px;
		border-radius: 5px;
		background-image: linear-gradient(0deg, rgba(0, 167, 220, 1) 0%, rgba(9, 97, 174, 1) 100%);
		color: #fff;
		text-decoration: none;
		display: block;
		text-align: center;
		margin-top: 20px;
	}
	
	header .Sp_menu a.link_1{
		font-size: 1.2rem;
		margin-top: 15px;
		display: block;
	}
	
}


@media (max-width: 1100px){
	
	
	
	#Dai_top section.module02 .Service .txt_area{
		width: 80%;
	}
}

@media (max-width: 800px){
	
	
	#Dai_top section.module00 .Top_title .Sp_title h1{
	    position: absolute;
		top: 80px;
        right: 13px;
        width: 47px;
	}

	#Dai_top section.module00 .Top_title .Sp_title h1 img{
		width: 100%;
		
	}
	
	#Dai_top section.module00 .Top_title .Sp_title h2{
	    width: 300px;
        position: absolute;
        bottom: 20px;
        right: 0;
	}
	
	#Dai_top section.module00 .Top_title .Sp_title h2 img{
		width: 100%;
	}


#Dai_top section.module00 .Top_title .Sp_title{
	display: block;
	width: 100%;
	height: auto;
}
	
	
	.inner_1100{
	padding: 0px 15px;
	}	
	
	.Top_slider .slider-item02 {
            background-position: -100px 30px;
}	
	
.Top_slider .slider-item03 {
            background-position: -200px 30px;
}
	
.Top_slider .slider-item04 {
            background-position: -620px 30px;
}
		
.Top_slider .slider-item05 {
            background-position: -490px 30px;
}

.Top_slider .slider-item06 {
            background-position: -450px 30px;
}

.Top_slider .slider-item07 {
            background-position: -520px 30px;
}

.Top_slider .slider-item08 {
            background-position: -490px 30px;
}
	
	
	#Dai_top section.module00{
		width: 90%;
		height: 80vh;
		margin-left: inherit;
		float: right;
	}
	
	.Top_slider .slider-item{
		height: 80vh;
	}
	
	#Dai_top section.module00 .Top_title{
	position: inherit;
    top: inherit;
    left: inherit;
    transform:inherit;
    width:inherit;
	}
	
	#Dai_top section.module00 .Top_title>h1{
		display: none;
	}
	
	
	#Dai_top section.module00 .Top_title span.h3{
		font-size: 1.3rem;
		font-weight: 400;
		text-align: inherit;
		margin-top: 0.25em;
		
	}
	
	#Dai_top section.module00 .Top_title span.h2{
		font-size: 2.0rem;
		font-weight: 400;
		margin-top: 0;
        display: block;
		text-align: inherit;
	}
	
	
	
	#Dai_top section.module02 .Head_txt_area{
		flex-wrap: wrap;
		margin-bottom: 30px;
	}
	
	.nobr{
    display: none;
}
	
	h2.headline{
		width: 100%;
		font-size: 5.2rem;
	}
	
	h2.headline span {
    line-height: 2.8em;
    padding-left: 1%;
}
	
	#Dai_top section.module01 .txt_area h3{
		font-size: 1.9rem;
	}
	
	#Dai_top section.module01 .txt_area{
		width: 100%;
		padding-right: 0%;
		margin-bottom: 40px;
	}
	
	#Dai_top section.module01 .img_area{
		border-radius: 20px;
		width: 95%;
		height: 320px;
		margin: 0 auto;
	}
	
	#Dai_top section.module01 ul{
		margin-top: 50px;
	}
	
	#Dai_top section.module02 .Head_txt_area p{
		width: 100%;
		margin-left: 0%;
	}
	
	#Dai_top section.module02 .Service{
		flex-wrap: wrap-reverse;
		margin-top: 0px;
	}
	
	#Dai_top section.module02 .Service .txt_area{
		width: 100%;
		padding-right: 0%;
		margin-top: 28px;
        margin-bottom: 50px;
	}
	
	#Dai_top section.module02 .Service figure.img_area{
		width: 100%;
		height: 200px;
    	border-radius: 20px;
	}
	
	#Dai_top section.module02 .Service .txt_area ul li a{
		font-size: 1.3rem;
		padding: 5px 5px;
        font-size: 1.1rem;
	}
	
	#Dai_top section.module03 figure.img_area{
        width: 100%;
        height: 320px;
        margin: 0 auto;
        float: none;
        margin-bottom: 20px;
		border-radius: 0px;
	}
	
	#Dai_top section.module04 .inner_1100{
		flex-wrap: wrap;
		 
	}

	#Dai_top section.module04 .txt_area{
		width: 100%;
	}
	
	#Dai_top section.module04 ul{
		width: 100%;
	}
	
	#Dai_top section.module05 ul{
		flex-wrap: wrap;
	}
	
	#Dai_top section.module05 ul li{
		width: 100%;
	}
	
	#Dai_top section.module01 .content{
		padding: 60px 0px;
	}
	
	#Dai_top section.module02{
		margin: 60px 0px 30px 0px;
	}
	
	#Dai_top section.module02 .Service .txt_area h3{
		padding-left: 16%;
	}
	
	#Dai_top section.module02 .Service .txt_area ul{
		margin-top: 20px;
	}
	
	#Dai_top section.module03{
		padding: 0px 0px 30px 0px;
	}
	
	#Dai_top section.module04{
		padding: 30px 0px 30px 0px;
	}
	
	#Dai_top section.module03 figure.img_area{
		height: 250px;
	}
	
	#Dai_top section.module04 ul li a{
		flex-wrap: wrap;
	}
	
	#Dai_top section.module04 ul li p{
		margin-top: 10px;
		width: 100%;
	}
	
	#Dai_top section.module04 ul{
		margin-top: 20px;
	}
	
	#Dai_top section.module05{
		padding: 30px 0px 30px 0px;
	}
	
	#Dai_top section.module05 ul{
		margin-top: 0px;
	}
	
	#Dai_top section.module05 ul li{
		margin-bottom: 20px;
	}
	
	footer ul{
		flex-wrap: wrap;
		width: 100%;
		justify-content: space-between;
	}
	
	footer ul li{
		width: 47%;
        border-bottom: solid 1px #ddd;
        padding: 5px 5px;
		
	}
	
	footer ul.end{
		width: 100%;
	}
	
	footer ul.end li{
		border-bottom: none;
	}
	
	footer ul li a{
		text-align: center;
	}
	
	footer .contact{
		flex-wrap: wrap;
    	padding: 30px 30px;
	}
	
	footer .contact .txt_area1{
		width: 100%;
		padding-right: 0%;
	}
	
	footer .contact .txt_area2{
		width: 100%;
		border-left: none;
	}
	
	footer .contact h2{
		font-size: 5.2rem;
		text-align: center;
	}
	
	footer .contact .txt_area2{
		margin-top: 10px;
        padding-left: 0%;
	}
	
	footer .contact{
		height: auto;
		background-size: cover;
    	background-position: center;
	}
	
	footer .contact .txt_area2 a.tel{
		font-size: 3.5rem;
	}
	
	#Dai_top .back_color{
		position: relative;
	}
	
	.scrolldown {
    bottom: 0;
    left: 5%;
	}
	
	.scrolldown span{
		bottom: 75px;
	}
	
	.scrolldown:after{
		height: 60px;
	}
	
	/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:60px;}
     100%{bottom:-5px;}
 }
}

.grecaptcha-badge { bottom: 80px!important; }