@charset "utf-8";
/* CSS Document */

#MvWrap{
background: url("../img/mv_bg_pc.jpg") no-repeat top center;
}
#Mv{
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding:200px 0 80px 20px; 
}
#Mv img{
margin-bottom: 50px;
}
#Mv p{
font-size:26px;
font-weight: bold;
margin-bottom: 30px;
line-height: 1.8
}

#Mv p span{
background: url("../img/line.png") bottom left repeat-x;
padding-bottom: 5px;
}

.section{
padding:100px 20px;
width: 100%;
margin: 0 auto; 
}
.section h2{
font-size:50px;
color:#00789a;
margin: 0 auto 80px;
text-align: center
}
.section h2 img{
display: block;
width: 120px;
height: auto;
margin: 0 auto 30px
}
.section p{
font-size:18px;
font-weight: bold;
margin: 0 auto 40px;
text-align: center;
line-height: 1.8;
max-width: 900px
}
#AboutWrap {
background-image: url("../img/section_bg_top.png"),url("../img/about_bg_pc.gif");
background-position: top left , bottom right;
background-repeat: repeat-x,no-repeat
}
#About > img {
display: block;
width: 100%;
max-width: 800px;
height: auto;
margin: 0 auto 
}

#HowToWrap{
background:#e1f9f9;
}
#HowToWrap .section{
padding:100px 0;
}
#HowToWrap p{
padding:0 20px;
}
#HowTo li.case_detail{
position: relative;
display: block;
width: 1000px !important;
padding: 50px 0; 
background:#fff;
box-shadow: 0px 0px 20px 0px rgba(211, 228, 232, 0.9);
border-radius: 20px;
margin: 80px 50px 0;
}
#HowTo li.case_detail:before{
position: absolute;
content:"";
width: 200px;
height: 80px;
background: url("../img/case01_title.png") no-repeat top center;
top:-64px;
left: 50%;
transform: translateX(-50%)  
}
#HowTo li.case02.case_detail:before{
background: url("../img/case02_title.png") no-repeat top center;
}
#HowTo li.case03.case_detail:before{
background: url("../img/case03_title.png") no-repeat top center;
}
#HowTo li.case_detail img{
display: block;
margin: 0 auto 10px;
width: 640px;
height: auto
}
#HowTo li.case_detail p{
font-size:22px;
width: 80%;
margin-bottom: 0;
font-weight: bold
}
#HowTo li.case_detail p span{
color: #f31e00
}

/*-----slickカスタマイズ ここから-----*/
.slick-prev, .slick-next {
position: absolute;
display: block;
height: 90px;
width: 90px;
color:#007391;
top: 50%;
left: 50%;
transform: translate(0, -50%);
padding: 0;
border: none;
outline: none;
z-index: 1000
}
.slick-prev::before,
.slick-next::before{
display: none;
}

.slick-prev {
transform: translateX(-550px);
background:url("../img/case_prev.png") no-repeat center;
}
.slick-prev:hover,
.slick-prev:focus{
background:url("../img/case_prev.png") no-repeat center;
opacity: 0.8
}

.slick-next{
transform: translateX(450px);  
background:url("../img/case_next.png") no-repeat center;
}
.slick-next:hover,
.slick-next:focus{
background:url("../img/case_next.png") no-repeat center;
opacity: 0.8
}
/*-----slickカスタマイズ ここまで-----*/

#Works .work_info{
width: 100%;
max-width: 1000px;
margin:0 auto;
display: flex;
justify-content: space-between;
align-items: top;
}
#Works .client_name{
font-size:14px;
margin-bottom: 10px
}

#Works .site_name{
font-size:28px;
margin-bottom: 30px;
}
#Works .site_name span{
padding-bottom: 5px;
border-bottom: dashed 1px #333
}

#Works .site_url{
font-size:20px;
color:#00789a;
}

#Works .site_url a{
text-decoration: underline;
}
#Works .site_url a:hover{
text-decoration:none;
}

#Works.section p.site_url {
font-size:20px;
color:#00789a;
margin:0;
text-align: left;
line-height: 1.8;
}

#Works .site_description{
width: 100%;
max-width: 1000px;
margin: 0 auto
}

#Works .site_description p{
width: 100%;
max-width: 900px;
margin:0 auto 50px;
text-align: left;
font-size:16px;
font-weight: normal;
padding: 0 10px
}

#Works .site_description p.copy{
margin:0 auto 20px;
text-align: left;
font-size:24px;
font-weight:bold;
padding:0
}
#Works .site_description img{
display: block;
margin:0 auto;
border:solid 1px #706f6f;
width: 100%;
max-width:900px;
height: auto
}

/*#WordWrap{
background:#e1f9f9;
}*/
#WordWrap {
background-image: url("../img/section_bg_top.png"),url("../img/about_bg_pc.gif");
background-position: top left , bottom right;
background-repeat: repeat-x,no-repeat
}


#WordWrap img {
display: block;
width: 90%;
max-width: 406px;
height: auto;
margin:20px auto 70px
}
#ServiceWrap {
padding:60px 20px 0;
background-image: url("../img/section_bg_top.png"),url("../img/service_bg_pc.jpg");
background-position: top left , top 50px center;
background-repeat: repeat-x,no-repeat
}
#Service p {
max-width: 900px
}
#OtoiawaseWrap {
background: url("../img/section_bg_top.png") top left repeat-x;
}
#Otoiawase dl {
width: 650px;
margin-top: 0;
margin-right: auto;
margin-bottom: 30px;
margin-left: auto;
}
#Otoiawase dt {
float: left;
width: 180px;
text-align: right;
padding-top: 22px;
clear: both;
font-weight: bold
}
#Otoiawase dt.url {
padding-top: 15px;
}
#Otoiawase dt.type {
padding-top: 22px;
}
#Otoiawase dd {
margin-left: 190px;
padding: 15px 0px 4px;
text-align: left
}
#Otoiawase dd input[type="radio"], #Otoiawase dd input[type="checkbox"] {
margin-top: 10px;
}
#Otoiawase dd input[type="text"], #Otoiawase dd textarea {
padding: 10px 5px;
border-radius: 5px;
width: 465px;
border: 1px solid #ccc;
}
#Otoiawase dd input[type="text"] {
margin-bottom: 3px
}

#Otoiawase dd.site_owner,
#Otoiawase dd.service_content{
padding: 15px 0px 25px;
}
#Otoiawase .input-rule {
display: block;
	font-size: 12px;
}
#Send input[type="submit"] {
display: block;
margin: 0 auto;
width: 200px;
height: 50px;
border: none;
border-radius: 10px;
color: #fff;
font-size: 15px;
cursor: pointer;
background: #007391;
-webkit-transition: background .2s ease;
transition: background .2s ease;
}
#Send input[type="submit"]:hover {
	background: #0098c0;
}
#Thanks .h2wrap{
margin-top: 92px;
border-top:solid 1px #ccc;
width: 100%;
background:#00789a
}
#Thanks h2{
width: 100%;
max-width: 900px;
color:#fff;
padding: 50px 20px;
margin: 0 auto
}
#ThanksContents{
line-height: 40px;
margin: 50px auto;
width: 100%;
max-width: 800px;
font-size: 18px;
padding:0 20px;
}
#Thanks p{
margin-bottom: 40px;
}
@media screen and (max-width: 1100px) {
#MvWrap{
background-image: url("../img/mv_bg_top.png"),url("../img/mv_bg_bottom.png");
background-position: top right,bottom left;
background-repeat: no-repeat;
background-size:100% auto ;
padding-top: 140px;
}

#Mv{
width: 100%;
padding:41% 20px 50px;
background: url("../img/mv_copy_mb.png") no-repeat top center;
background-size:90% auto ;
}

#Mv img{
display: none;
}
#Mv p{
width: 90%;
margin: 0 auto 20px;
font-size:18px;
}
.section{
padding:60px 20px 30px;
}

.section h2{
font-size:30px;
margin: 0 auto 60px;
}
.section p{
font-size:16px;
margin: 0 auto 30px;
}
#AboutWrap {
background-size: auto 50px,100% auto;
}

#HowTo li.case_detail{
width: 900px !important;
padding: 50px 0;
margin: 80px 50px 0;
}

#HowTo li.case_detail img{
width: 90%;
max-width: 640px;
}

#HowTo li.case_detail p{
font-size:18px;
width: 90%
}

/*-----slickカスタマイズ ここから-----*/
.slick-prev{
top: 50%;
left:0;
transform: translate(10px, -50%);
}
.slick-next {
top: 50%;
left: auto;
right:0;
transform: translate(-10px, -50%);
}
/*-----slickカスタマイズ ここまで-----*/

#Works .work_info{
flex-direction: column-reverse;
margin-bottom: 50px;
}

#Works .site_name{
font-size:24px;
margin-bottom: 24px;
}

#Works .site_url{
font-size:18px;
}

#Works.section p.site_url {
font-size:18px;
}

#Works .site_image img{
display: block;
width:90%;
max-width: 484px;
height: auto;
margin: 30px auto 0
}

#Works .site_description p{
max-width:1000px;
margin:0 auto 40px;
padding: 0;
}
#Works .site_description p.copy{
margin:0 auto 30px;
font-size:22px;
}

#WordWrap {
background-size: auto 50px,100% auto;
}

#ServiceWrap {
padding:30px 0px 0px;
background-image: url("../img/section_bg_top.png"),url("../img/service_bg_pc.jpg");
background-position: top left , top 50px center;
background-repeat: repeat-x,no-repeat;
background-size: 1px 50px,100%
}
}


@media screen and (max-width: 1000px) {
#Thanks p {
font-size: 14px;
line-height: 2.0;
}

#Thanks .h2wrap{
margin-top:0;
border-top:none;
}
}

@media screen and (max-width: 767px) {
#Mv p {
width: 100%;
}

.section h2{
font-size: 35px;
margin: 0 auto 30px;
}

.section h2 img {
width: 90px;
margin: 0 auto 15px
}

.section p {
text-align: left
}
.section#About p:last-child{
margin-bottom: 0
}

#HowToWrap .section{
padding:60px 0;
}

#HowTo li.case_detail p {
font-size: 15px;
line-height: 1.6
}


#Otoiawase dl {
width: 93%;
max-width: 500px;
margin-top: 0;
margin-right: auto;
margin-bottom: 30px;
margin-left: auto;
}
#Otoiawase dt {
float: none;
width: 100%;
text-align: left;
padding-top: 0px;
font-weight: bold
}
#Otoiawase dd {
width: 100%;
margin-left: 0px;
padding: 0px 0px 15px;
}
#Otoiawase dd input[type="text"], #Otoiawase dd textarea {
padding: 10px 5px;
border-radius: 5px;
width: 100%;
}
#Otoiawase dd input[type="text"] {
margin-bottom: 3px
}

#Otoiawase dd.site_owner label, 
#Otoiawase dd.service_content label{
display:block;
}
#Otoiawase .input-rule {
display: block;
font-size: 12px;
}
#Send input[type="submit"] {
width: 250px;
height: 40px;
font-size: 17px;
margin-bottom: 0px;
}
}


@media screen and (max-width: 560px) {
#Mv p {
font-size:16px;
}
.section h2{
font-size: 22px;
}
.section p {
font-size: 14px;
font-weight: normal
}
#Works .site_name {
font-size: 18px;
}
#Works .site_description p {
font-size: 14px;
}
#Works .site_description p.copy {
font-size: 18px;
}
}


@media screen and (max-width: 900px) {
#HowTo li.case_detail{
width: 800px !important;
}
/*-----slickカスタマイズ ここから-----*/
.slick-prev, .slick-next {
height: 40px;
width: 40px;

}
.slick-prev::before,
.slick-next::before{
display: none;
}
.slick-prev {
background-size: 100%;
}

.slick-prev:hover,
.slick-prev:focus{
background:url("../img/case_prev.png") no-repeat center;
background-size: 100%;
opacity: 0.8
}
.slick-next{
background-size: 100%;
}

.slick-next {
top: 50%;
left: auto;
right:0;
transform: translate(-10px, -50%);
}
.slick-next:hover,
.slick-next:focus{
background:url("../img/case_next.png") no-repeat center;
background-size: 100%;
opacity: 0.8
}
/*-----slickカスタマイズ ここまで-----*/

}
@media screen and (max-width: 800px) {
#HowTo li.case_detail{
width: 700px !important;
}
}

@media screen and (max-width: 700px) {
#HowTo li.case_detail{
width: 600px !important;
}
}


@media screen and (max-width: 600px) {
#HowTo li.case_detail{
width: 500px !important;
}
}
@media screen and (max-width: 550px) {
#HowTo li.case_detail{
width: 450px !important;
}
}
@media screen and (max-width: 500px) {
#HowTo li.case_detail{
width: 450px !important;
}
/*-----slickカスタマイズ ここから-----*/
.slick-prev{
transform: translate(2px, 0);
opacity: 0.6
}
.slick-next {
transform: translate(-2px, 0);
opacity: 0.6
}
/*-----slickカスタマイズ ここまで-----*/
}

@media screen and (max-width: 450px) {
#HowTo li.case_detail{
width: 400px !important;
}
}
@media screen and (max-width: 400px) {
#HowTo li.case_detail{
width: 350px !important;
}
}
@media screen and (max-width: 350px) {
#HowTo li.case_detail{
width: 310px !important;
}
}
