﻿/*----------------------------------------
reset
----------------------------------------*/

html, body, div, p, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6,
blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*----------------------------------------
全体
----------------------------------------*/

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.7;
	word-break: break-word;
	text-size-adjust: none;
}

.wrapper {
	box-sizing: border-box;
	margin: 0 auto;
	width: 1040px;
}

.flex{
	display: -webkit-box;   /* Chrome 4-20, Firefox 2-21, Safari 3.1-6.0 */
	display: -webkit-flex;  /* Chrome 21-27 */
	display: -moz-box;      /* Firefox 2-21 */
	display: -ms-flexbox;   /* IE9 */
	display: flex;
}

.inline-flex {
	display: -webkit-inline-box;   /* Chrome 4-20, Safari 3.1-6.0 */
	display: -webkit-inline-flex;  /* Chrome 21-27 */
	display: -moz-inline-box;      /* Firefox 2-21 */
	display: -ms-inline-flexbox;   /* IE9 */
	display: inline-flex;
  }

.sp-wrapper {
	overflow: hidden;
}

.center {
	display: block;
	margin: 0 auto;
}

.left {
	float: left;
}

.right {
	float: right;
}

.pc-left {
	float: left;
}

.pc-right {
	float: right;
}

.aligncenter,
.alignnone {
	display: block;
	margin: 0 auto;
}

.alignleft {
	float: left;
}

.alignright {
	float: right;
}

.t-center {
	text-align: center !important;
}

.t-left {
	text-align: left !important;
}

.t-right {
	text-align: right !important;
}

.pc-t-center {
	text-align: center !important;
}

.clear {
	clear: both;
}

.inline {
	display: inline !important;
}

.inline-b {
	display: inline-block !important;
}

.block {
	display: block !important;
}

.of {
	overflow: hidden;
}

.pc-of {
	overflow: hidden;
}

img,iframe {
	display: block;
}

a:hover img {
	opacity: 0.6;
}

.img-banner {
	background-size: 100% !important;
	box-sizing: border-box;
	height: 0;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width: 100%;
}

a:hover .img-banner {
	opacity: 0.6;
}

a.bo {
	text-decoration: underline;
}

a.bo:hover {
	text-decoration: none;
}

a.no-bo {
	text-decoration: none;
}

a.no-bo:hover {
	text-decoration: underline;
}

.full {
	height: auto;
	width: 100%;
}

.full-sp {
	height: auto;
	margin: 0 auto;
	max-width: 100%;
	width: auto;
}

.list {
	box-sizing: border-box;
	margin-bottom: 20px;
}

.list li {
	box-sizing: border-box;
	list-style: disc !important;
	margin-left: 23px !important;
}

.num-list {
	box-sizing: border-box;
	margin-bottom: 20px;
}

.num-list li {
	box-sizing: border-box;
	list-style: decimal !important;
	margin-left: 20px !important;
}

.num-list li:nth-child(n+10) {
	margin-left: 28px !important;
}

.num-list-2 {
	box-sizing: border-box;
	margin-bottom: 20px;
}

.num-list-2 li {
	box-sizing: border-box;
	padding-left: 33px;
}

.num-in {
	left: 0;
	position: absolute;
}

.check-list {
	box-sizing: border-box;
	margin-bottom: 20px;
}

.check-list li {
	box-sizing: border-box;
	margin-bottom: 10px;
	min-height: 25px;
	padding-left: 40px;
	position: relative;
}

.check-list li:last-child {
	margin-bottom: 0;
}

.check-list li::before {
	background: #fff;
	box-sizing: border-box;
	border: 3px solid #000;
	content: "";
	left: 0;
	height: 25px;
	position: absolute;
	top: 3px;
	width: 25px;
}

.check-list li::after {
	box-sizing: border-box;
	border-right: 4px solid #ff0000;
	border-bottom: 4px solid #ff0000;
	content: "";
	left: 12px;
	height: 22px;
	position: absolute;
	top: -1px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	width: 14px;
}

.douga {
	margin: 0 auto;
}

.douga iframe {
	margin: 0 auto;
}

.text-base {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 18px;
	position: relative;
}

.text-base-2 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 36px;
	position: relative;
}

.text-base-3 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 54px;
	position: relative;
}

.text-base-4 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 72px;
	position: relative;
}

.text-base-5 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 90px;
	position: relative;
}

.text-in {
	left: 0;
	position: absolute;
}

.pc {
	display: block;
}

.pc.tab {
	display: block;
}

.pc.tab-s {
	display: block;
}

.pc.tab.mobi {
	display: block;
}

.tab {
	display: none;
}

.tab-s {
	display: none;
}

.tab.mobi {
	display: none;
}

.pc.mobi {
	display: block;
}

.mobi {
	display: none;
}

.first {
	margin-top: 0 !important;
}

.last {
	margin-bottom: 0 !important;
}

.mt-50{
	margin-top: 50px;
}
.mb-30{
	margin-bottom: 30px;
}
.mb-50{
	margin-bottom: 50px;
}
.pt-50{
	padding-top: 50px;
}
.pb-50{
	padding-bottom: 50px;
}

.br-sp{
	display: none;
}

.no-wrap{
	white-space: nowrap;
}

input[type="button"],input[type="submit"], input[type="reset"] {
    -webkit-appearance: none;
}
/*----------------------------------------
文字スタイル
----------------------------------------*/

.gothic {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

.minchou {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.sans {
	font-family: 'Noto Sans JP', sans-serif;
}

.serif {
	font-family: 'Noto Serif JP', serif;
}

strong,b,.strong {
	font-weight: 700;
}

.red {
	color: #c62828;
}

.blue {
	color: #0c135a;
}

.light-blue {
	color: #303f9f;
}

.yellow {
	color: #ffff00;
}

.green {
	color: #009b63;
}

.orange {
	color: #ff8800;
}

.magenta {
	color: #F37C92;
}

.cyan {
	color: #5DBFF2;
}

.gold{
	color: #7a5f18;
}

.text-bg-blue{
	background: #0058a4;
	padding: 0 5px;
    border-radius: 2px;
	text-shadow: none;
}

.text-bg-green{
	background: #009b63;
	padding: 0 5px;
    border-radius: 2px;
	text-shadow: none;
}

.y-b {
	background: linear-gradient(transparent 50%, #ffff00 50%);
}

.fs15 {
	font-size: 15px !important;
	line-height: 25px !important;
}

.fs23 {
	font-size: 23px !important;
	line-height: 33px !important;
}

.fs30 {
	font-size: 30px !important;
	line-height: 40px !important;
}

.fs40 {
	font-size: 40px !important;
	line-height: 50px !important;
}

.fs50 {
	font-size: 50px !important;
	line-height: 60px !important;
}

.shadow{
	-moz-box-shadow: 2px 3px 8px rgba(0,0,0,0.4);
	-webkit-box-shadow: 2px 3px 8px rgba(0,0,0,0.4);
	-o-box-shadow: 2px 3px 8px rgba(0,0,0,0.4);
	-ms-box-shadow: 2px 3px 8px rgba(0,0,0,0.4);
}

/*----------------------------------------
table
----------------------------------------*/
table{
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
  }
table tr:not(last-child){
	border-bottom:solid 1px #ddd;
}
table th{
	padding: 7px 5px;
	border-right:solid 1px #ddd;
	border-left:solid 1px #ddd;
	width: 155px;
}
table th:nth-child(1){
	background-color:#303f9f;
	border-bottom: solid 1px #fff;
	text-align: left;
	color: #fff;
	padding: 10px;
}
table td{
	padding: 7px 5px;
	border-right:solid 1px #ddd;
	border-left:solid 1px #ddd;
	width: 155px;
	background: #f0f8ff;
	padding: 10px;
}
table tr:nth-child(1) td{
	border-top: solid 1px #ddd;
}
/*----------------------------------------
タイトル
----------------------------------------*/
.title-common{
	font-size: 36px;
	font-weight: 700;
}
.emphasis_circle_filled {
	padding-top: .2em;
	background-position: top left 0;
	background-repeat: repeat-x;
	background-size: 1.0em .3em;
	background-image: radial-gradient(.12em .12em at center center,#c62828,#c62828 100%,transparent);
	font-size: 1.3em;
}
/*----------------------------------------
帯
----------------------------------------*/
.mm-common-btm-arrow{
	background: #303f9f;
	color: #fff;
	font-weight: 700;
	padding: 30px 0;
	position: relative;
	clear: both;
}
.mm-common-btm-arrow::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -110px;
    border: 110px solid transparent;
    border-top: 43px solid #303f9f;
}
/*----------------------------------------
リスト
----------------------------------------*/
.list-common{
	justify-content: space-between;
}
.list-common ul{
	width: 45%;
}
.list-common ul li:not(nth:last-child){
	margin-bottom: 20px;
}

/*----------------------------------------
header
----------------------------------------*/
header{
	height: 105px;
}
.head-in{
	box-sizing: border-box;
	padding: 10px 0;
}
.head-in-logo{
	text-decoration: none;
	color: #000;
}
.head-in-logo h1{
	font-size: 38px;
	font-weight: 900;
	position: relative;
	padding-top: 11px;
	line-height: 1.1;
}
.head-in-logo .head-in-text{
	position: relative;
	padding-left: 50px;
	letter-spacing: -0.9px;
	/*text-shadow: 1px 1px 0px #fff, 2px 2px 3px #777;*/
}
.head-in-logo .head-in-text::before{
	content: '';
	background: url(images/logo.png) no-repeat;
	background-size: 100%;
	width: 44px;
	height: 42px;
	position: absolute;
	left: 0;
	top: 11px;
}
.head-in-logo .head-in-text .en{
	letter-spacing: -2px;
	font-size: 32px;
}
.head-in-logo .company{
	display: block;
	font-weight: 600;
	margin: 6px 0 0 53px;
	font-size: 18px;
}
.head-in-info-tel{
	margin: 10px;
	line-height: 1.1;
}
.head-in-info-tel-text{
	font-size: 14px;
	font-weight: 700;
}
.head-in-info-tel-num{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: -.1vw;
	position: relative;
	margin: 3px 0;
	padding-left: 30px;
}
.head-in-info-tel-num::before{
	content: '';
	position: absolute;
	background: url(images/tel.png)  no-repeat;
	width: 26px;
	height: 26px;
	top:3px;
	left: 0;
	background-size: 100%;
}
.head-in-info-tel-num a{
	text-decoration: none;
	color: #000;
}
.head-in-info-open{
	font-size: 12px;
}
.head-in-info-contact{
	width: 250px;
	height: 76px;
	display: block;
	text-decoration: none;
	background: #c62828;
	border-radius: 2px;
	margin-top: 4px;
}
.head-in-info-contact-text{
	color: #fff;
	font-weight: 400;
	display: block;
	text-align: center;
	line-height: 130%;
}
.head-in-info-contact-text .time{
	display: block;
	margin-top: 14px;
}
.head-in-info-contact-text .mail{
	display: inline-block;
	position: relative;
	padding-left: 30px;
}
.head-in-info-contact-text .mail::before{
	position: absolute;
	content: "";
	top:5px;
	left: 0;
	background: url(images/mail.png) no-repeat;
	background-size: 100%;
	width: 22px;
	height: 15px;
}
.sp-menu{
	display: none;
}

/*----------------------------------------
メインイメージ
----------------------------------------*/
#main-img{
	padding: 40px 0 0;
}
#main-img img{
	margin: 0 auto;
	max-width: calc(100% - 30px);
	height: auto;
	padding: 0 15px;
}
.main-img-1{
	background-image: url(images/pc_slide_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.main-img-2,.main-img-3{
	background: #f0f8ff;
}

/*----------------------------------------
漫画
----------------------------------------*/
.manga{
	margin: 40px auto 0 auto;
}
.manga img{
	margin: 0 auto;
	max-width: 100%;
	height: auto;
}

/*----------------------------------------
税務調査相談士研究協会について
----------------------------------------*/
#about-corp{
    background-color: #303f9f;
    background-image: url(images/waku-lt.png), url(images/waku-rt.png), url(images/waku-lb.png), url(images/waku-rb.png);
    background-position: 0 top, right 0 top, 0 bottom, right 0 bottom;
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	color: #fff;
}
#about-corp .content{
	padding: 50px 70px 70px 70px;
}
#about-corp .tx{
	line-height: 40px !important;
	display: inline-block;
    text-align: left;
}
#about-corp .content{
    text-align: center;
}

/*----------------------------------------
お問い合わせ
----------------------------------------*/
.contact-box{
	background: #f0f8ff;
}

.contact-box .wrapper{
	background: #fff;
	padding-bottom: 10px;
	position: relative
}

.contact-txt-1{
	background: #303f9f;
	color: #fff;
	padding: 20px 0;
	font-size: 30px;
}
.contact-logo{
	font-size: 30px;
	margin: 20px 0;
}
.contact-logo span{
	position: relative;
	padding-left: 50px;
	font-weight: 700;
}
.contact-logo span::before{
	content: '';
	background: url(images/logo.png) no-repeat;
	background-size: 100%;
	width: 37px;
	height: 37px;
	position: absolute;
	left: 0;
	top: 8px;
}

.contact-tel-p{
	position: absolute;
	left: -94px;
	bottom: 0;
	z-index: 0;
}

.contact-tel-mail-box{
	justify-content: end;
	align-items: center;
	margin: 20px 100px 20px 0;
}
.contact-tel,
.contact-mail{
	width: 41%;
	height: 100px;
	z-index: 1;
}
.contact-tel{
	margin-right: 20px;
}
.contact-tel .in-box{
	align-items: center;
	justify-content: center;
	border-radius: 0.3rem;
	background: rgba(255,255,255,.5);
}
.contact-tel-txt-1{
	font-size: 24px;
	background: #0c135a;
	color: #fff;
	display: block;
	border-radius: 0.3rem;
}
.contact-tel-num{
	font-size: 40px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	display: block;
	padding: 0;
	margin: 0 5px;
	white-space: nowrap;
	color: #000;
}
.contact-tel-num a{
	text-decoration: none;
	color: #000;
}

.contact-mail{
	background: #c62828;
	color: #fff;
	margin-left: 20px;
	text-decoration: none;
	position: relative;
  	display: inline-block;
	border-radius: 0.3rem;
}
.contact-mail-txt-1{
	display: block;
	font-size: 23px;
	margin-top: 5px;
	position: absolute;
	top: -1.25rem;
	left: calc(50% - 150px);
	display: block;
	width: 300px;
	padding: 0.05rem 0;
	color: #d44114;
	border: 2px solid #d44114;
	border-radius: 100vh;
	background: #fff;
	-webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

.contact-mail-txt-1:before,
.contact-mail-txt-1:after {
	position: absolute;
	left: calc(50% - 10px);
	content: "";
}

.contact-mail-txt-1:before {
	bottom: -10px;
	border-width: 10px 10px 0 10px;
	border-style: solid;
	border-color: #d44114 transparent transparent transparent;
}

.contact-mail-txt-1:after {
	bottom: -7px;
	border-width: 10px 10px 0 10px;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
}
.contact-mail-txt-2{
	display: block;
	font-size: 24px;
	position: relative;
	padding-left: 38px;
	display: inline-block;
}
.contact-mail-txt-2::before{
	content: '';
	position: absolute;
	background: url(images/mail_md.png)  no-repeat;
	width: 32px;
	height: 26px;
	top:10px;
	left: 0px;
	background-size: 100%;
}
.contact-muryou{
	display: inline-block;
	vertical-align: sub;
	margin-right: 10px;
}

/*----------------------------------------
金田先生バナー
----------------------------------------*/
#kanedasensei-bn img{
	margin: 0 auto;
	max-width: 100%;
	height: auto;
	box-shadow: 0 10px 25px 0 rgb(0 0 0 / 20%);
}
/*----------------------------------------
お悩み
----------------------------------------*/
#onayami .bal img{
	margin: 0 auto 20px auto;
}

.onayami-list ul li{
	background: #d7ebf6;
	padding: 20px;
	min-height: 100px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.onayami-list ul li .txt{
	position: relative;
	padding-left: 40px;
	font-weight: 700;
	font-size: 20px;
	width: 80%;
}

.onayami-list ul li .illust{
	width: 20%;
}
.onayami-list{
	position: relative;
}
.onayami-list img{
	max-width: 100%;
	height: auto;
}
.onayami-p{
	position: absolute;
	top:-259px;
	right: 0;
	z-index: -1;
}

/*----------------------------------------
ご安心ください
----------------------------------------*/
#omakase{
	font-size: 30px;
}
#omakase .txt-large{
	font-size: 36px;
}
#omakase .box-w{
	background: #fff;
	padding: 0 10px;
}
#omakase .under-l{
	border-bottom: solid 2px #fff;
}
#omakase-mm{
	background: url(images/omakase_bg.png) no-repeat;
	background-size: cover;
	padding: 70px 0;
	font-size: 46px;
	font-weight: 900;
}
#omakase-mm .txt-sm{
	font-size: 36px;
}
#omakase-mm .red{
	text-shadow:
    3px 3px #fff,
    1px 3px #fff,
    1px 1px #fff,
    3px 1px #fff,
    4px 3px #fff,
    3px 4px #fff,
    1px 3px #fff,
    3px 1px #fff;
}

/*----------------------------------------
メリット
----------------------------------------*/
#merit h2{
	line-height: 140%;
}
#merit .star img{
	margin: 0 auto;
}
#merit h2 .txt-large{
	font-size: 50px;
}

.soudanshi-logo{
	display: inline-block;
	max-width: 100%;
	height: auto;
	margin-right: 5px;
	vertical-align: bottom;
}
.merit-list ul{
	counter-reset:cp_clist;
}
.merit-list li{
	border:solid 2px #7a5f18;
	background: #fdfdf3;
	width: 45%;
	margin-bottom: 20px;
	position: relative;
}
.merit-list li:nth-child(odd){
	float: left;
	clear: both;
}
.merit-list li:nth-child(even){
	float: right;
}
.merit-list li:last-child{
	margin-bottom: 50px;
}
.merit-list li::before{
	counter-increment: cp_clist;
	content: counter(cp_clist);
	position: absolute;
	width: 120px;
	height: 100%;
	background: #7a5f18;
	color: #fff;
	font-size: 36px;
	font-family: Arial, Helvetica, sans-serif;
	font-style: italic;
	text-align: center;
}
.merit-list li .txt{
	padding: 30px 10px 30px 130px;
}
.merit-list li:nth-child(1)::after{
	content: '';
	background: url(images/merit_icon1.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 48px;
	top:55%;
	width: 32px;
	height: 33px;
}
.merit-list li:nth-child(2)::after{
	content: '';
	background: url(images/merit_icon2.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 48px;
	top:55%;
	width: 29px;
	height: 35px;
}
.merit-list li:nth-child(3)::after{
	content: '';
	background: url(images/merit_icon3.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 45px;
	top:55%;
	width: 33px;
	height: 33px;
}
.merit-list li:nth-child(4)::after{
	content: '';
	background: url(images/merit_icon4.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 46px;
	top:52%;
	width: 33px;
	height: 36px;
}
.merit-list li:nth-child(5)::after{
	content: '';
	background: url(images/merit_icon5.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 44px;
	top:55%;
	width: 35px;
	height: 31px;
}
.merit-list li:nth-child(6)::after{
	content: '';
	background: url(images/merit_icon6.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 39px;
	top:62%;
	width: 43px;
	height: 33px;
}
.merit-list li:nth-child(7)::after{
	content: '';
	background: url(images/merit_icon7.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 48px;
	top:55%;
	width: 30px;
	height: 31px;
}
.merit-list li:nth-child(8)::after{
	content: '';
	background: url(images/merit_icon8.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 39px;
	top:55%;
	width: 42px;
	height: 34px;
}
.merit-list li:nth-child(9)::after{
	content: '';
	background: url(images/merit_icon9.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 40px;
	top:55%;
	width: 40px;
	height: 36px;
}
.merit-list li:nth-child(10)::after{
	content: '';
	background: url(images/merit_icon10.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 51px;
	top:55%;
	width: 33px;
	height: 34px;
}

/*----------------------------------------
ポイント
----------------------------------------*/
#point-box{
	background: #0c135a;
	font-size: 30px;
}
#point-box.mm-common-btm-arrow::before {
    border-top: 43px solid #0c135a;
}
#point-box .flex{
	align-items: center;
	justify-content: center;
}
#point-box .txt-1{
	border-right: solid 2px #fff;
	padding-right: 20px;
	line-height: 220%;
	white-space: nowrap;
}

#point-box .txt-2{
	padding-left: 20px;
	font-weight: 400;
}
#point-box .txt-1 .num{
	font-family: Arial, Helvetica, sans-serif;
	font-style: italic;
	font-size: 80px;
	font-weight: lighter;
}
.point-ex-box{
	padding: 80px 0 0;
	justify-content: space-between;
}

.point-ex-box .arrow{
	font-size: 24px;
	position: relative;
	margin-top: 30px;
}
.point-ex-box .arrow::after{
	content: '';
	background: url(images/arrow.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 0;
	top:30%;
	width: 56px;
	height: 49px;
}
.point-ex-box-contents {
	width: 40%;
	border:solid 3px #303f9f;
	padding: 20px;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
}
.point-ex-box-contents .img{
	margin-right: 20px;
}
.point-ex-explain{
	position: relative;
	margin: 70px auto 50px auto;
	padding-left: 100px;
	max-width: 800px;
}
.point-ex-explain p{
	margin: 0 auto;
}
.point-ex-explain::before{
	content: '';
	background: url(images/point.png) no-repeat;
	background-size: 100%;
	position: absolute;
	left: 0;
	top:8px;
	width: 57px;
	height: 87px;
}

/*----------------------------------------
ご相談から税務調査対応までの流れ
----------------------------------------*/
#flow{
	background: #f0f8ff;
}
.flow-lists{
	counter-reset:cp_clist;
}
.flow-lists li:nth-child(odd){
	background: #fff;
	width: 100%;
	margin-bottom: 20px;
	position: relative;
}
.flow-lists li:nth-child(odd)::before{
	white-space: pre;
	content: 'STEP';
	position: absolute;
	width: 160px;
	height: 100%;
	background: #303f9f;
	color: #fff;
	font-size: 30px;
	font-family: Arial, Helvetica, sans-serif;
	font-style: italic;
	text-align: center;
	font-weight: lighter;

}
.flow-lists li .txt{
	padding: 30px 10px 30px 180px;
}
.flow-lists li:nth-child(odd)::after{
	counter-increment: cp_clist;
	content: counter(cp_clist);
	position: absolute;
	color: #fff;
	font-size: 50px;
	font-family: Arial, Helvetica, sans-serif;
	font-style: italic;
	text-align: center;
	top:30%;
	left: 62px;
	font-weight: lighter;
}
.flow-lists .flow-title{
	font-size: 24px;
	font-weight: 700;
}
.flow-lists .flow-contents{
	margin-top: 10px;
	display: block;
}
.flow-lists li:nth-child(even){
	margin: 0 auto;
	text-align: center;
	height: 50px;
}
.triangle{
	display: inline-block;
	border-top: 30px solid #303f9f;
	border-right: 30px solid transparent;
	border-bottom: 30px solid transparent;
	border-left: 30px solid transparent;
  }
.flow-lists .pay{
	background: #c62828;
	color: #fff;
	border-radius: 20px;
	padding: 5px 10px;
	margin:0 20px 20px 20px;
	font-size:0.8em;
	font-weight: lighter;
}
.flow-lists .at {
    background: #bfbfbf;
    color: #333;
    border-radius: 20px;
    padding: 5px 10px;
    font-size: 0.8em;
    font-weight: lighter;
	white-space: nowrap;
}

/*----------------------------------------
事務所のご案内
----------------------------------------*/
#profile{
	background: rgb(186,116,24);
	background: -moz-linear-gradient(0deg, rgba(186,116,24,.4) 0%, rgba(255,255,255,.4) 30%, rgba(255,255,255,.4) 70%, rgba(186,116,24,.4) 100%);
	background: -webkit-linear-gradient(0deg, rgba(186,116,24,.4) 0%, rgba(255,255,255,.4) 30%, rgba(255,255,255,.4) 70%, rgba(186,116,24,.4) 100%);
	background: linear-gradient(0deg, rgba(186,116,24,.4) 0%, rgba(255,255,255,.4) 30%, rgba(255,255,255,.4) 70%, rgba(186,116,24,.4) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ba7418",endColorstr="#ba7418",GradientType=1);
}
#profile .wrapper{
	width: 800px;
}
#profile h2{
	display: flex;
    align-items: center;
	font-weight: lighter;
}
#profile h2:before, #profile h2:after {
	content: "";
    height: 1px;
    flex-grow: 1;
	background-color: #ba7418;
}
#profile h2:before {
	margin-right: 1rem;
}
#profile h2:after {
	margin-left: 1rem;
}
#profile .greeting{
	justify-content: space-between;
	margin: 50px auto;
	align-items: center;
}
#profile .greeting .name{
	margin: 10px auto;
}
#profile h3{
	font-weight: 700;
	font-size: 24px;
	margin-bottom: 20px;
}
#profile .ex{
	margin: 20px auto;
	border:solid 1px #ba7418;
	background: #fff;
	padding: 20px;
}
#profile .ex .ceo-name{
	margin-bottom: 10px;
}

/*----------------------------------------
会社概要
----------------------------------------*/
#company table{
	width: 47%;
}
#company table th{
	width: 24%;
}
#company .map{
	width: 47%;
}

/*----------------------------------------
料金表
----------------------------------------*/
.fee-box-wrap{
	justify-content: space-between;
	margin-top: 30px;
	margin-bottom: 20px;
	flex-wrap: wrap;
}
.fee-box{
	background: #fdfdf3;
	margin-bottom: 40px;
}
.fee-box:nth-child(1){
	width: 47%;
}
.fee-box:nth-child(2){
	width: 47%;
}
.fee-box:nth-child(3){
	width: 100%;
	margin-bottom: 0;
}
.fee-box dt{
	background: #303f9f;
	color: #fff;
	padding:10px 0;
	letter-spacing: .1em;
	font-size: 24px;
}
.fee-box dd{
  width: 95%;
  box-sizing: border-box;
  margin: 0 2.5%;
  padding: 0 0 5% 0;
}
.fee-num-box{
	align-items: baseline;
	justify-content: center;

}
.fee-num-large{
	font-size: 46px;
}
.fee-num-day{
	font-size: 24px;
}
.fee-num-yen{
	font-size: 24px;
}
.fee-attention{
	border:dashed 1px #303f9f;
	padding: 10px;
	background: #fff;
	margin-top: 20px;
}
.fee-gensyougaku-box{
	justify-content: center;
	flex-wrap: nowrap;
	align-items: center;
	margin: 20px;
	font-weight: 700;
}
/*.fee-gensyougaku-1{
	border-radius: 10px;
	background:#1c6ebb;
	color: #fff;
	padding: 15px;
}
.fee-gensyougaku-2{
	border-radius: 10px;
	background: #178dbb;
	color: #fff;
	padding: 15px;
}*/
.fee-gensyougaku-hiku{
	font-size: 24px;
	font-weight: 700;
}

.fee-gensyougaku-img{
}

.fee-gensyougaku-img img{
	max-width: 490px;
	height: auto;
	margin: 50px auto 20px auto;
}

/*----------------------------------------
対応エリア
----------------------------------------*/
#area{
	background: #f0f8ff;
}

#area .flex{
	justify-content: center;
	margin-top: 50px;
	align-items: center;
}
#area .pic{
	margin-right: 20px;
}
#area .area-tx{
	margin-left: 20px;
}
#area .area-tx .prif{
	display: inline-block;
	background: #303f9f;
	color: #fff;
	padding: 2px 10px;
	border-radius: 3px;
	margin: 20px 0;
}
/*----------------------------------------
よくあるご質問
----------------------------------------*/
#qa .qa-mark img{
	margin: 0 auto;
}
#qa dl{
}
#qa dt{
	background:#f0f8ff;
	color: #0058a4;
	align-items: center;
	flex-wrap: nowrap;
	min-height: 45px;
	border:solid 1px #030f9f;
}
#qa dt .q-mark{
	background: #030f9f;
	color: #fff;
	text-align: center;
	height: 100%;
	width: 63px;
	min-height: 60px;
	line-height: 60px;
	margin-right: 20px;
	font-weight: lighter;
	font-size: 1.4em;
}
#qa dd{
	display: none;
	flex-wrap: nowrap;
	padding: 20px 20px 20px 10px;
	border-right: solid 1px #dfdfdf;
	border-left: solid 1px #dfdfdf;
	border-bottom: solid 1px #dfdfdf;
}
#qa dd .a-mark{
	font-weight: lighter;
	color: #fff;
	font-size: 1.4em;
	background: #c62828;
	width: 45px;
	height: 45px;
	line-height: 45px;
	text-align: center;
	margin-right: 30px;
	flex-shrink: 0;
}
#qa dt .q-text{
	width: calc(92% - 50px);
	justify-content: space-between;
}
#qa dt .icon-mark{
	position: relative;
}
#qa dt .icon-mark:before{
	display: block;
	content: "";
	position: absolute;
	top:0; 
	right:0;
	bottom:0;
	left:0;
	margin:auto;
	width: 25px;
	height: 1px;
	background-color: #030f9f;
	transition: .2s;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}
#qa dt .icon-mark:after{
	display: block;
	content: "";
	position: absolute;
	top: 0; 
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 25px;
	height: 1px; 
	background-color: #030f9f;
	transition: .3s;
}
#qa dt.active .icon-mark:before{
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
}
#qa dt.active .icon-mark:after{
	background-color: transparent;
}

/*----------------------------------------
ご相談フォーム
----------------------------------------*/
#form{
	background: #f0f8ff;
}
#form .form-mark img{
	margin: 0 auto;
}
#form table{
	margin: 50px auto;
	max-width: 800px;
}
#form th{
	background: none;
	color: #000;
	font-weight: normal;
	width: 25%;
	border:none;
	vertical-align: top;
	padding: 0;
}
#form td{
	width: 75%;
}
#form td,
#form tr{
	border:none;
	padding: 0 0 25px 0;
}
#form input[type="text" i] {
	width: 98%;
	height: 50px;
	border:solid 1px #bfbfbf;
	box-sizing: border-box;
	font-size: 16px;
}
#form textarea{
	width: 98%;
	height: 100px;
	border:solid 1px #bfbfbf;
	box-sizing: border-box;
	font-size: 16px;
}
.form-submit{
	text-align: center;
	width: 400px;
	position: relative;
	margin: 0 auto;
}
.form-submit input[type="submit" i] {
	width: 100%;
	background: #c62828;
	color: #fff;
	height: 100px;
	line-height: 100px;
	text-align: center;
	border:none;
	font-size: 24px;
}
.form-submit input:hover{
	cursor: pointer;
}
.form-submit::after {
    position: absolute;
    content: "";
    top: 36px;
    right: 24px;
    background: url(images/submit_arrow.png) no-repeat;
    background-size: 100%;
    width: 29px;
    height: 29px;
}
#policy{
	margin: 50px auto;
}
#policy dl{
	border:solid 1px #0c135a;
}
#policy dt{
	background: #0c135a;
	text-align: center;
	font-size: 30px;
	color: #fff;
	padding: 10px 0;
}
#policy dd{
	padding: 40px;
	background: #fff;
}
#policy dd p{
	margin-bottom: 20px;
}

/*----------------------------------------
footer
----------------------------------------*/
footer{
	background: #303f9f;
	padding: 70px 0;
	color: #fff;
}
.footer-inner{
	justify-content: space-between;
}
footer .logo{
	font-size: 38px;
    font-weight: 900;
    position: relative;
    padding-top: 11px;
    line-height: 1.1;
}
footer .logo::before {
    content: '';
    background: url(images/logo_w.png) no-repeat;
    background-size: 100%;
    width: 37px;
    height: 36px;
    position: absolute;
    left: 0;
    top: 19px;
}
footer .logo .name{
	position: relative;
	padding-left: 50px;
	letter-spacing: -0.9px;
}
footer .logo .company{
    display: block;
    font-weight: 600;
    margin: 10px 0 0 53px;
    font-size: 18px;
}
footer .ad{
	margin-top: 30px;
}
footer .head-in-info-tel-text{
	font-weight: lighter;
}
footer .head-in-info-tel-num{
	margin: 0 auto;
	letter-spacing: 0;
}
footer .head-in-info-tel-num a{
	text-decoration: none;
	color: #fff;
}
footer .head-in-info-tel-num::before {
    content: '';
    position: absolute;
    background: url(images/tel_w.png) no-repeat;
    width: 26px;
    height: 26px;
    top: 12px;
    left: 5px;
    background-size: 100%;
}
footer .head-in-info-contact-text{
	height: 76px;
}
footer .head-in-info-contact-text .time{
	padding-top: 15px;
}
#copyright{
	font-size: 12px;
	margin: 10px auto;
}

#footer_fixed{
	display: none;
}

/*----------------------------------------
thanks
----------------------------------------*/
.thanks-box{
	background: #f0f8ff;
}
.back-to-top{
	display: block;
	margin: 30px auto;
	border:solid 1px #303f9f;
	padding: 15px;
	text-align: center;
	max-width: 300px;
}
/*----------------------------------------
ページトップ
----------------------------------------*/

.pagetop {
	background: #0c135a;
	box-sizing: border-box;
	border-radius: 10px;
	bottom: 20px;
	cursor: pointer;
	height: 75px;
	position: fixed;
	right: 20px;
	width: 75px;
	z-index: 100;
}

.pagetop::before {
	box-sizing: border-box;
	color: #fff;
	content: "\f106 ";
	font-family: 'Font Awesome 5 Free';
	font-size: 75px;
	line-height: 75px;
	position: absolute;
	left: 0%;
	right: 0;
	margin: auto;
	text-align: center;
	font-weight:600;
}

.pagetop:hover {
	opacity: 0.6;
}

/*----------------------------------------
Edge CSSハック
----------------------------------------*/

@supports (-ms-ime-align: auto) {



}

/*----------------------------------------
IE11以下 CSSハック
----------------------------------------*/

@media screen\0 {



}

/*----------------------------------------
Firefox CSSハック
----------------------------------------*/

@-moz-document url-prefix() {



}

/*----------------------------------------
Safari CSSハック
----------------------------------------*/

_::-webkit-full-page-media, _:future, :root .num-list li {
	margin-left: 30px !important;
}

_::-webkit-full-page-media, _:future, :root .num-list li:nth-child(n+10) {
	margin-left: 40px !important;
}