@charset "utf-8";
/* このサイトはモバイルファースト */
/*
@media only screen and (min-width: 767px){}
*/
.pc{display: none}
img{max-width: 100%;}


@media only screen and (min-width: 767px){
  .pc{display:inherit;}
  .sp{display: none;}
  a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  }
}

/* ///////////////////////////////////////////////

メインビジュアル

////////////////////////////////////////////////// */
.mainvisual{
  background: url(../images/mainvisual_bg_sp.png) no-repeat top center;
  background-size: cover;}

.mainvisual-inner{padding:5% 5% 5% 5%;position: relative;}
.mainvisual-inner .lead{font-size:.76rem; font-weight: 500;text-align: center;
margin: 0 0 2% 0}

.mainvisual-inner img.price{width: 80%;margin: 3% 0;z-index: 98;position: relative;}
.mainvisual-inner img.achievement{width: 52%;margin: 0 0%;}
.mainvisual-inner img.staff{width: 50%;position: absolute;right:2%; bottom: 0;z-index: 2;}
.mainvisual-inner img.chiji{width: 50%;position: absolute;right:0%; bottom: 18.75px; z-index: 3;}

@media only screen and (min-width: 767px){
  .mainvisual{
    background: url(../images/mainvisual_bg_pc.jpg) repeat-x top center;
    background-size: cover;
  }
    .mainvisual-inner{width: 1000px;margin: 0 auto;position: relative;padding: 0;height: 470px}
    .mainvisual-inner .lead{font-size:1.1rem;text-align: left;
      display: inline-block;position: absolute; top: 15px; left: 0;}
    .mainvisual-inner img.title_pc{position: absolute; top: 45px; left: 0;}
    .mainvisual-inner img.price_pc{width:auto;position: absolute; top: 182px; left: 0; z-index: 1;}
    .mainvisual-inner img.achievement{width: 280px;position: absolute;top: 55px;left: 390px;margin: 0 9%;}
    .mainvisual-inner img.staff{width:360px;position: absolute; bottom:0px; right:0; z-index: 0;}
    .mainvisual-inner img.icon1{width:auto;position: absolute; bottom:0px; left:100px;}
    .mainvisual-inner img.chiji_pc{width: 50%;position: absolute;right:0%; bottom: 3px;z-index: 3;}
}


/* ///////////////////////////////////////////////

content01：建設業許可を持っている？持ってない？

////////////////////////////////////////////////// */
.content01{ background: url(../images/common_bg01.jpg) no-repeat top center;background-size: cover;width: 100%;}

/*基本の吹き出し*/
.balloon{
  position: relative;
  background: #db4509;
  padding: 1.5em 1em;
  margin: 0 0 5% 0;
  text-align: center;
}
.balloon:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #db4509 transparent transparent transparent;
  border-width:20px 30px 0px 30px;
}
.content01_inner{padding:3% 5%;}
.content01_inner img.description,
.content01_inner img.catch02
{max-width: 100%;margin-bottom: 5%;}

.content01_inner p.aside{
  font-size:1.1rem; font-weight: 600;text-align: center;padding:0 0 10% 0}

@media only screen and (min-width: 767px){
  .balloon{padding: 2em 1em;margin: 0 0 30px 0;}
  .content01_inner{width: 1152px; margin: 0 auto;text-align: center;padding:0;}
  .content01_inner img.description_pc,
  .content01_inner img.catch02_pc{display: inline-block;}
  .content01_inner img.description_pc{margin-bottom: 20px;}
  .content01_inner p.aside{
    font-size:1.8rem; font-weight: 600;text-align: center;padding:0 0 70px 0}
}

/* ///////////////////////////////////////////////

content02：行政書士法人TOTALの4ポイント

////////////////////////////////////////////////// */
.content02{background-color: #b9d6d4;}
.content02_inner{padding: 10% 5%}
.content02_inner h2{text-align: center; font-size: 1.8rem;margin-bottom: 7%;line-height: 2.5rem;}
.content02_inner ul{display: flex; flex-direction: row; flex-wrap: wrap;justify-content: space-between;}
.content02_inner li{ list-style-type: none;width: 48%;text-align: center;margin-bottom: 5%;}
.content02_inner li span{font-size: 1.3rem; border-bottom: #d94e09 solid 5px;padding: 6% 0;display: inline-block;font-weight: 500}

@media only screen and (min-width: 767px){
  .content02_inner{width: 1000px; margin: 0 auto;padding:70px 0;}
  .content02_inner h2{font-size: 2.6rem;margin-bottom: 50px;}
  .content02_inner ul{}
  .content02_inner li{width: 22%;margin-bottom: 0;}
  .content02_inner li span{font-size: 1.7rem;font-weight: 600}
}

/* ///////////////////////////////////////////////

content03：料金のご案内

////////////////////////////////////////////////// */
.content03{
  background-image:url(../images/common_bg01.jpg);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;}
.content03_inner{
  background-image:
  url(../images/content03_bg_icon.png);
  background-repeat: no-repeat;
  background-position:-20px top;
  background-size: 40%;
  padding: 10% 5%}
.content03_inner h2{text-align: center; font-size: 1.8rem;margin-bottom: 3%;line-height: 2.5rem;}
.content03_inner span.aside{font-size:1.1rem; font-weight: 600;text-align: center;padding:0 0 10% 0;display: block;color: #d94e09}
.content03_inner .label{background-color: #2ca89f;display: block;color: #fff;padding: 2% 4% 3%;width: 50%;margin: -15px auto;text-align: center;position: relative;z-index: 0;font-weight: 600;}
.index_price{background-color: #fff; padding:7% 4%; margin-bottom: 20px}
.index_price p.note{font-size:.8rem; font-weight: 400;line-height: 1.2rem;text-align: left;margin-top: 5%;}
a.more_btn {
  display: block;
  padding: 20px 0;
  text-decoration: none;
  background-color: #ed522e;
  /*ボタン色*/
  color: #FFF;
  border-bottom: solid 6px #c54f20;
  border-radius: 5px;
  transition-duration: 0.2s;
  margin:0 auto;
  width: 80%;
  height:21px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 600;
}

a.more_btn:hover {
  /*ボタン色*/
  background-color: #ff732e;
  -ms-transform: translateY(2px);
  -webkit-transform: translateY(2px);
  transform: translateY(2px);
  /*下に動く*/
  border-bottom: solid 6px #c54f20;
  /*影*/
}

@media only screen and (min-width: 767px){
  .content03_inner{
    background-image:
    url(../images/content03_bg_icon.png);
    background-repeat: no-repeat;
    background-position:70px 30px;
    background-size: 20%;
    width: 1000px; margin: 0 auto;padding:60px 0;}
  .content03_inner h2{font-size: 2.6rem;margin-bottom: 20px;}
  .content03_inner span.aside{font-size:1.5rem;padding:0 0 70px 0;}
  .content03_inner .label{ font-size: 1.6rem;padding: 10px;width: 240px;    margin: -30px auto;letter-spacing: 0.1rem}
  .index_price{padding: 60px 0;text-align: center; margin-bottom: 30px}
  .index_price p.note{width: 600px; margin: 30px auto 0;display: block;font-size: .9rem;line-height: 1.5rem}

  a.more_btn {
    width: 360px;
    font-size: 1.6rem;
  }
  }


/* ///////////////////////////////////////////////

content04：1分間チェック

////////////////////////////////////////////////// */
.content04{background-color: #f4d5c5;}
.content04_inner{
  background-image:
  url(../images/content04_bg_icon.png);
  background-repeat: no-repeat;
  background-position:right top;
  background-size: 40%;
  padding: 10% 5%}
.content04_inner h2{text-align: center; font-size: 1.4rem;margin-bottom: 3%;line-height: 2.5rem;}
.content04_inner h2 span{color: #d94e09}
.content04_inner span.aside{font-size:1.1rem; font-weight: 600;text-align: center;padding:0 0 5% 0;display: block;color: #d94e09;line-height: 1.5rem}
.content04_inner p.note{font-size:.8rem; font-weight: 400;line-height: 1.2rem;text-align: left;margin-top: 5%;}

@media only screen and (min-width: 767px){
  .content04{
    background-image:url(../images/common_bg01.jpg);
    background-repeat:no-repeat;
    background-position:center top;
    background-size:cover;
  }
  .content04_inner{
    background-size: 16%;
    background-position:790px 10px;
    padding: 70px;
    width: 1000px; margin: 0 auto;
    text-align: center;
  }
  .content04_inner h2{font-size: 2.6rem;margin-bottom: 20px;}
  .content04_inner span.aside{font-size:1.5rem;padding:0 0 30px 0;}
  .content04_inner img.chart_pc{display: inline-block;}
  .content04_inner p.note{width: 670px; margin: 30px auto 0;display: block;font-size: .9rem;line-height: 1.5rem}
}


/* ///////////////////////////////////////////////

contactform：お問い合わせフォーム

////////////////////////////////////////////////// */
.contactform{}
.contactform .title{
  background-image:url(../images/form_bg_img.png);
  background-color: #f27d42;
  background-repeat: no-repeat;
  background-position:left top;
  background-size: 35%;
  text-align: center;color: #fff;padding: 8% 0;}
.contactform .title h2{font-size: 1.8rem;margin-bottom: 3%;}
.contactform .title span.aside{font-size:1.1rem; font-weight: 400;}

.contactform_inner{padding: 5% 5% 15% 5%;}

@media only screen and (min-width: 767px){
  .contactform .title{
    background-position:center;
    background-size: 200px;text-align: center;color: #fff;padding: 60px 0;}
  .contactform .title h2{font-size: 2.6rem;margin-bottom: 20px;}
  .contactform .title span.aside{font-size:1.5rem;padding:0 0 30px 0;}
  .contactform_inner{width: 600px; margin: 0 auto;padding: 40px 0 0;}
}

/* form用テーブル */
table.form{}
table.form th{display: block;text-align: left;font-weight: 400;padding: 2% 0}
table.form td{display: block;font-weight: 200;padding-bottom: 5%;}
table.form li{list-style-type: none;}

@media only screen and (min-width: 767px){
  table.form{width: 100%;}
  table.form th{padding: 10px 0}
  table.form td{padding-bottom: 20px;}
}

span.form-must,
span.form-free
{font-size: .8rem;padding: 0 2%;border-radius: 3px;color: #fff;margin-right: 2%}

span.form-must{background-color: #f27d42; }
span.form-free{background-color: #bdb6b3;}

/* 入力フォーム：ラジオボタン */
ul.radio li{line-height: 1.8rem}

/* 入力フォーム：記述 */
input[type=text],
input[type=tel],
input[type=email],
textarea {
	width: 90%;
	padding:1rem 1rem;
	border: solid 1px #e4e4e4;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	overflow:hidden;
	font-size: 1.1rem;
	background:#efefef;
}

/* 入力フォーム：placeholder */
:placeholder-shown {color: #0b57ac;}
::-webkit-input-placeholder {color: #ccc; }	/* Google Chrome, Safari, Opera 15+, Android, iOS */
moz-placeholder {color: #ccc; opacity: 1; } 	/* Firefox 18- */
::-moz-placeholder {color: #ccc; opacity: 1; }	/* Firefox 19+ */
:-ms-input-placeholder {color: #ccc; }	/* IE 10+ */

/* 入力フォーム：選択 */
select{
	-webkit-appearance: none;/* デフォルトのデザインを消す */
	-moz-appearance: none;/* デフォルトのデザインを消す */
	appearance: none;/* デフォルトのデザインを消す */
	width: 100%;
	font-size:1.1rem;
	padding:1rem 1rem;
	border: solid 1px #e4e4e4;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	overflow:hidden;
	background:#efefef;
}
select::-ms-expand {
	display: none;
}

span.place{position: relative;}
.place:after{
    display: block;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.5em;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .4em .3em 0;
    border-color: #333 transparent transparent;
    pointer-events: none;
}

@media only screen and (min-width: 767px){
  select{width:570px;}
}

/* 入力フォーム　リスト横並び */
ul.ul_table {
  display: table;
}
ul.ul_table li {
  display: table-cell;
  padding-right: 15px;
}

/* 入力フォーム　span */
p.form-date {
  margin: 10px 0 5px;
}

/* 確認ボタン */
p.submit{text-align: center;margin-bottom: 5%;}
.submitBtn {
  -webkit-appearance: none;/* デフォルトのデザインを消す */
	-moz-appearance: none;/* デフォルトのデザインを消す */
	appearance: none;/* デフォルトのデザインを消す */
	display:inline-block;
	cursor:pointer;
	width:160px;
	height:60px;
	line-height:50px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	border: none;
  border-bottom: solid 4px #af4318;
	background:#d94e09;
  border-radius: 3px;
	font-size: 1.1rem;
	font-family: "Noto Sans Japanese",メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO","ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;

}

/* ///////////////////////////////////////////////
contactform：個人情報アコーディオン
////////////////////////////////////////////////// */


/*ボックス全体*/
.accbox {
    margin: 0 auto 40px;
    padding: 0;
    max-width: 800px;/*最大幅*/
}

/*ラベル*/
.accbox label {
    display: block;
    margin: 1.5px 0;
    padding : 11px 12px;
    color :#28828;
    font-weight: bold;
    cursor :pointer;
    transition: all 0.5s;
    text-align: center;
}

/*ラベルホバー時*/
.accbox label:hover {
    background :#ffb788;
}

/*チェックは隠す*/
.accbox input {
    display: none;
}

/*中身を非表示にしておく*/
.accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.cssacc:checked + .accshow {
    height: auto;
    padding: 3%;
    background: #eaeaea;
    opacity: 1;
    line-height: 2rem
}

dl.policy{}
dl.policy dt{color: #d94e09; font-weight: 600}
dl.policy dd{font-size: .8rem;line-height: 1.5rem;margin: 0 0 10px}

/* ///////////////////////////////////////////////

sub：料金案内

////////////////////////////////////////////////// */
.sub_price{}
.sub_price .label{
  background-color: #2ca89f;
  display: block;
  color: #fff;
  padding: 3% 4% 3%;
  width: 50%;
  margin: 0px auto 10px;
  text-align: center;
  font-weight: 400;
  font-size: 1.2rem}

  @media only screen and (min-width: 767px){
    .sub_price{
      padding: 70px 0;
      margin:60px auto;
      max-width: 800px;
      background: #FFF;
      border-radius: 3px;
      box-shadow: 0 0px 20px rgba(0,0,0,0.2);
      position:relative;
      text-align: center;
    }
    .sub_price .label{
      position: absolute;
      left: 0;
      right: 0;
      top: -20px;
      background-color: #2ca89f;
      display: block;
      color: #fff;
      padding: 3% 4% 3%;
      width:40%;
      margin: 0px auto 10px;
      text-align: center;
      font-weight: 400;
      font-size: 1.5rem}
      .sub_price p.note{
        width: 600px;
margin: 30px auto 0;
display: block;
font-size: .9rem;
line-height: 1.5rem;
}
      }

/* ///////////////////////////////////////////////

sub：会社概要

////////////////////////////////////////////////// */

ul.staff{margin-bottom: 15%;}
ul.staff li{width: 100%}
ul.staff li img{
  border-radius: 200px;
  width: 60%;
  display: block;
  margin: 0 auto;
  margin-bottom: 5%}
  ul.staff li .staff-name{
  display: block;
  font-size: 1.3rem;
  text-align: center;
  font-weight: 600;
  margin-bottom: 3%}
ul.staff li .number{
  display: block;
  font-size: 1rem;
  text-align: center;
  color:#2ca89f;
  margin-bottom: 5%}
ul.staff li .message{padding:0 10%}

@media only screen and (min-width: 767px){
  ul.staff{display: flex;flex-direction: row;flex-wrap: wrap;justify-content: space-between;margin-bottom: 30px;}
  ul.staff li{width: 50%}

}



div.access_single{
  overflow:hidden;
  margin:0 0 20px 0;
  border-bottom:#CCC dotted 1px;
  padding:0 0 20px 0;}
div.access_info{
  float:left;
  width:340px;
  padding: 25px 0 0 0;}

p.hojin-name, p.office-name, p.station, p.address, p.googlemap, p.post, p.office-tel
{margin: 0}

p.hojin-name{color:#d94e09;font-size:.9em;line-height: .8em}
p.office-name{color:#d94e09;font-size:1.5em}
p.station{color:#a9a9a9;font-size:1em}
p.address{margin-bottom: 10px;line-height: 1.3em;}
p.googlemap{margin-bottom: 15px;}
p.googlemap a{background-color: #d94e09;color: #fff;display: inline-block;padding: 5px 20px;}
p.googlemap a:hover{opacity: 0.8}
p.googlemap a::after{
	content: '\f35d';
	font-family: "Font Awesome 5 Free";
  font-weight: 900;
	padding: 0 0 0 10px;
}
p.rootguide{margin-bottom: 10px;}
p.rootguide a{
	background-color: #d94e09;
	color: #fff;
	display: inline-block;
	padding: 5px 20px;}
p.rootguide a:hover{opacity: 0.8}
p.rootguide a::after{
	content: '\f35d';
	font-family: "Font Awesome 5 Free";
  font-weight: 900;
	padding: 0 0 0 10px;
}
p.office-tel{font-size: 1em;}
p.office-tel a{color:#d94e09;text-decoration: underline;}


p.access_btn {
margin-top: 30px;
overflow: hidden;
text-align: center;
}

a.access_common_btn {
	background:#fff;
	border:2px solid #d94e09;
	color: #282828!important;
	text-align: center;
	font-size: 1.2rem;
	padding: 10px 50px;
	border-radius: 2rem;
	-webkit-border-radius: 2rem;
	-moz-border-radius: 2rem;
	position: relative;
	text-decoration: none;
	display: inline-block;
}
a.access_common_btn:hover {
	background: #d94e09;
	color: #fff!important;
}
a.access_common_btn::after {
	font-family: "Font Awesome 5 Free";
	content: '\f35d';
  font-weight: 900;
  margin-left: 10px;
}

@media only screen and (max-width: 767px){
  a.access_common_btn {
    font-size: 1rem;
    padding: 5px 20px;
    }
  a.access_common_btn::after {
    margin-left: 5px;
  }
}
/* end */
