@charset "utf-8";
/* CSS Document */
@media only screen and (max-width: 1200px) {
/*positionに高さを与える*/
.ratio-1_1:before {
    content: "";
    display: block;
    padding-top: 70%; /* 1:1 */
}

.inner {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 70%;
}
/*positionに高さを与えるEND*/
}

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

	
#TopPhoto {
	margin: 70px 0 0 0;
}

#TopTitle,
#TopTitle2	{
		margin-top: 70px;
	}
		
.PageLink {
	margin-top:-70px;
    padding-top:70px;
}
	
.MainNews {
	margin-top:10px;
	margin-right: -10%;
}
	
.WorkList2 li {
	width: 100%;
	margin: 8% 0 0 0;
	text-align: center;
}
	
.WorkListSample .TempIcon {
	bottom: 10px;
	left: 10px;
}
	
#TopBanner2 {
	margin-top: 70px;
}
	
.CompleteArea {
	background: url("../service/images/sankaku_sp.jpg") no-repeat top center;
	padding-top: 15%;
	text-align: center;
}
	
.TopTitleWht {
	font-size:180%;
}
	
#TroubleArea_Ameblo {
	background: url("../service/images/ameblo_bg_left_sp.jpg") no-repeat top left,url("../service/images/ameblo_bg_right_sp.jpg") no-repeat bottom right;
	padding: 8% 0 10% 0;
}
	
}/* デバイスの横幅が1000px以下の場合 */

	
@media only screen and (max-width: 768px) {
/*positionに高さを与える*/
.ratio-1_1:before {
    content: "";
    display: block;
    padding-top: 160%; /* 1:1 */
}

.inner {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 160%;
}
/*positionに高さを与えるEND*/
	
.SP_none {
	display: none;
}

	
.MgnTop5 {
	margin-top: 10% !important;
}
	
.MgnTop3 {
	margin-top: 5% !important;
}
	
.MgnTop8 {
	margin-top: 15% !important;
}

.gotop {
	right:10px;
	bottom:10px;
}

.gotop a {
	width:45px;
	height:45px;
}

body {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	font-size:12px !important;
	color:#000;
	line-height:1.8 !important;
	background:#FFF;
	-webkit-text-size-adjust: 100%;
	word-wrap:break-word;
	letter-spacing: .1em;
}
	
.MainPhoto {
	width: 95%;
	z-index: 1;
	right: -5%;
}
	
.MainText {
	width: 90%;
	margin-top: 65%;
}


	

	
.Title {
	font-size: 250%;
}
	
#Section02 {
	padding-bottom: 10%;
}
	
.List3 li {
	width: 90%;
	max-width: 500px;
	margin: 10% auto 0;
	
}
	
.List3 li:first-child {
		margin-top: 0;
	}

.Number {
	font-size: 600%;
}
	
#Section03 {
	margin: 10% auto 0;
}
	
.WorksTitle h2 {
	letter-spacing: 10px !important;
}
	
.WorksTitle {
	float: none;
	width: 20%;
	margin: 0 auto;
}

.WorkList {
	float: none;
	width: 90%;
	margin: 8% auto 0;
}
	
.WorkBtn {
	float: none;
	margin-top: 10%;
	text-align: center;
	font-weight: bold;
}

.WorkBtn a {
	border-bottom: 2px solid #7CCF90;
	display: inline-block;
}
	
/*矢印動く横*/
.faderight {
	display: none;
}
	
#Section04 {
	padding: 20% 0;
	margin: 10% 0 0 0;
background: url("../images/contact_bg_sp.jpg") no-repeat scroll;
}
	
#Section05 {
	margin: 10% 0;
}
	
.AccessLeft {
	float: none;
	width: 90%;
	margin: 0 auto;
}
	
.AccessRight {
	float: none;
	width: 100%;
	margin-top: 10%;
}
	
footer {
	padding: 10% 0 !important;
	text-align: center;
}
.F_nav {
	display: none;
}
	
	.F_Logo {
		width: 180px;
		margin: 0 auto;
	}
	
	
.MapBtn a {
	margin-top: 10%;
}
	
/*サービス*/
	
#TopBanner {
	margin-top: 90px;
}
	
#TopBanner img {
	margin-top: -20px;
}
	
#TableArea {
	padding: 10% 0;
}
	
.attention {
	text-align: center;
}

.LineTitle {
	font-size: 20px;
	line-height: 20px !important;
	height: 20px;
}
	
.LineTitle span {
	height: 20px;
	padding-right: 5px;
	vertical-align: top;
}
	
#TroubleArea {
	margin: 10% auto 0;
}
.msg-balloon {
    display: flex;
	justify-content: space-around;
}
	
.msg-text {
		padding: 20px;
	}

	
.msg-balloon figure {
    flex-shrink: 0;
    width: 80px;
}
.msg-balloon figure svg {
    min-width: 80px;
    min-height: 80px;
}
	
.button_solid004 a {
    display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  padding: 1em;
  width: 180px;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  background-color: #7CCF90;
  box-shadow: 0 5px 0 #aaaaaa;
  transition: 0.3s;
	border-radius: 10px;
	text-decoration: none;
	text-align: center;
}
	
#StepArea {
	padding: 10% 0;
}
	
.StepList {
	display:block;
}
.yajirushi {
	width: 100%;
	text-align: center;
	margin-top: 8%;
}
.StepBox {
	width: 80%;
	margin: 10% auto 0;
	padding: 5%;
}

.StepBox p {
	font-size: 120%;
}
	
.GrnBtn {
	margin-top: 5% !important;
}
	
.button_solid_wht a {
  justify-content: center;
  width: 250px;
	padding: 0.5em;
}
	
	.ApplyIcon {
		margin-right: 5px;
	}
	
#TempArea {
	margin: 10% auto 0;
}
	
.TempList {
	margin-top: 0;
	margin-bottom: 10% !important;
	display: block;
}
	
.TempList li {
	width: 90%;
	margin: 8% auto 0 auto;
	padding: 5% 5% 10% 5%; 
}
	
#CostListArea {
	padding: 8% 0 10% 0 !important;
	margin-top: 10%;
}
	
	
.CostThumList li {
	width: 46%;
	margin: 8% 2% 0 2%;
}
	
	.CostThumList li h3 {
		line-height: 1.4;
	}
	
	.PriceDetail {
		margin-top: 15px;
	}
	
	
	
#WorkWrap {
	padding: 10% 0;
}
	
.WorkListTitle {
	font-size: 150%;
	margin-top: 15px;
}
	
#AccessWrap {
	margin-bottom: 10%;
}
	
#QAWrap {
	margin: 10% auto;
	font-size: 110%;
}
	
#ContactWrap {
	padding: 10% 0;
}

.ContactBox {
	padding: 5% 0;
}
	
.AmeTitle {
	font-size: 190%;
	line-height: 1.5;
}

.wave {
	background: url("../service/images/wave.png") repeat-x bottom;
	padding-bottom: 20px;
	font-size: 80%;
	animation: loop 15s linear infinite;
	display: inline-block;
}
@keyframes loop {
    from {
        background-position: 0 30px;
    }
    to {
        background-position: -100% 30px; /* 画像のマイナス幅 */
    }
}
	
.Flex2 {
	display: block;
	justify-content: center;
  align-items: center;
}

.nomal {
	padding: 5%;
	margin-right: 0;
	margin-bottom: 8%;
}
	
.YelBg {
	padding: 10% 0;
}
	

	
#StepArea2 {
	padding: 10% 0;
}
	


.Big {
	margin-top: 8%;
	font-size: 160%;
}

.gamen {
	margin: 0;
}
	
.SampleList li {
	width: 100%;
	margin: 10% 0 0 0;
}
	
#SampleArea {
	padding: 10% 0;
}
	
.TicketArea {
	padding: 10% 5%;
}
}/* デバイスの横幅が768px以下の場合 */

@media only screen and (max-width: 610px) {
/*positionに高さを与える NEWない場合高さ変更*/
.ratio-1_1:before {
    content: "";
    display: block;
    padding-top: 170%; /* 1:1 */
}
	

.FreeBox {
	display: block;
	margin-top: 10%;
}
	
.FreeBox dt {
	color: #FFF;
	width: 90%;
	padding: 3% 5%;
	font-size: 130%;
	vertical-align: middle;
	font-weight: bold;
}

.FreeBox dd {
	background: #FFF;
	width: 90%;
	text-align: left;
	padding: 5%;
	vertical-align: middle;
	font-size: 120%;
}
	
.sample-balloon {
	margin-bottom: 5%;
}
	
.WorkListSample .TempIcon {
	width: 100px;
	bottom:0;
}
	
.RepairBox figure {
	display: block;
	width: 100%;
	text-align: center;
}

.RepairText {
	display: block;
	width: 100%;
	text-align: center;
	margin-left: 0;
	margin-top: 8%;
}

}/* デバイスの横幅が610px以下の場合 */