@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Serif+JP:wght@200..900&display=swap');


/* PCのみ非表示 */
.pc_none {
	display: none;
}

/* 税務相談予約ボタンの下の余白調整 */
.pb_0 {
	padding-bottom: 0 !important;
}

/* お知らせ・新着情報 */
.blog_2026 {
	display: flex;
	align-items: flex-start;
	line-height: 1.7;
}
.blog_2026+.blog_2026 {
	margin-top: 10px;
}

/* +++見出し、ボタンテキスト化+++ */

/* +++page-title+++ */
.main02{
	background: #0b68ba;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100px;
}
.page-title{
	max-width: 920px;
	width: 100%;
	color: #fff;
	font-weight: 700;
	font-family:  "Noto Serif JP", "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝B", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	letter-spacing: .15em;
	font-weight: 500;
	font-size: 24px;

}

/* +++sec-title01+++ */
.sec-title01{
	padding: 4px;
	border-radius: 8px;
	border: 1px solid #ddd;
	background: #fff;
	font-family: "Noto Serif JP", "Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝B" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	letter-spacing: .07em;
	font-weight: 700;
	font-size: 21px;
	margin-top: 0;
	clear: both;
}
.sec-title01 span{
	border-radius: 4px;
	display: flex;
	flex-direction: column;
	justify-content: center;
/*
	height: 70px;
	background: #0b68ba;
	padding: .85em 1em .67em 1em;
*/
	background: linear-gradient(#5bb1fd, #0b68ba 22%);
	color: #fff;

	padding: .75em 1em .77em 1em;
	line-height: 1.3;
}
.sec-title01 span:after{
	content: attr(data-en);
	font-family: "Jost", sans-serif;
	font-weight: 300;
	font-size: 55%;
	margin-top: .2em;
	letter-spacing: .05em;
}

/* +++sec-title02+++ */
.sec-title02{
	color: #0b68ba;
	border-bottom: 2px solid #ddd;
	font-family: "Noto Serif JP", "Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝B" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	letter-spacing: .05em;
	font-weight: 700;
	font-size: 20px;
	margin-top: 0;
	padding-bottom: 13px;
	clear: both;
}
.sec-title02 span{
	border-left: 4px solid #0b68ba;
	padding: .15em 0 .15em .55em;
	display: block;
}

/* +++.caption+++ */
.caption{
	padding-left: 1em;
	text-indent: -1em;
	clear: both;
	/*margin-bottom: .5em;*/
	display: none;
}
.caption:before{
	content: "＊";
	display: inline;
}
.notes_wrapper {
	font-size: 15px;
	display: flex;
	column-gap: 3px;
}
.notes_item {
	margin: 0;
}


/* +++++.link-button01+++++ */
.link-button01{
	font-weight: 600;
	width: 284px;
	border-radius: 6px;
	display: block;
	padding: 4px;
	background: #f7b400;
	color: #fff !important;
	text-decoration: none !important;
	margin: 0 auto 50px;
	line-height: 1;
	clear: both;
	position: relative;
}
.link-button01 span{
	background: linear-gradient(#fdd464, #f7b400 25%);
	display: flex;
	/*justify-content: center;*/
	align-items: center;
/*
	width: 100%;
*/
	height: 100%;
	border-radius: 3px;
	/*padding: 1.4em 0 1.2em;*/
	padding: 0.9em 4.8em 0.7em;
	line-height: 1.3;
}
.link-button01 span:after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: .8em solid #fff;
	border-top: .4em solid transparent;
	border-bottom: .4em solid transparent;
	margin-left: 1em;
	position: absolute;
	top: 40%;
	right: 17%;
	transform: translateX(-50%);
}
/* +++++.link-button02+++++ */
.link-button02{
	font-weight: 600;
	width: 284px;
	border-radius: 6px;
	display: block;
	padding: 4px;
	background: #f7b400;
	color: #fff !important;
	text-decoration: none !important;
	margin: 0 auto 50px;
	line-height: 1;
	clear: both;
	position: relative;
}
.link-button02 span{
	background: linear-gradient(#fdd464, #f7b400 25%);
	display: flex;
	/*justify-content: center;*/
	align-items: center;
/*
	width: 100%;
*/
	height: 100%;
	border-radius: 3px;
	/*padding: 1.4em 0 1.2em;*/
	padding: 0.9em 2.8em 0.7em;
	line-height: 1.3;
}
.link-button02 span:after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: .8em solid #fff;
	border-top: .4em solid transparent;
	border-bottom: .4em solid transparent;
	margin-left: 1em;
	position: absolute;
	top: 40%;
	right: 8%;
	transform: translateX(-50%);
}
.margin-bottom20{
	margin-bottom: 20px !important;
}


.sp_br {
	display: none;
}

@media screen and (max-width: 768px){
	*{
		padding: 0;
		margin: 0;
		box-sizing: border-box;
	}
	body{
		font-family:"游ゴシック",YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
		font-size: 16px;
	}
	button{
		border: none;
		border-radius: 0;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		-ms-appearance: none;
		-o-appearance: none;
	}
	html{
	
	}
	.sp_br {
		display: block;
	}

/* pcのみ非表示 */
.pc_none {
	display: block;
}

	/* common style */

	/* ++++header++++ */
	.sp_header_logo_link {
		color: #000 !important;
	}
	.sp_header_logo {
		display: flex;
		align-items: center;
		column-gap: 10px;
	}
	.logo_symnol {
		width: 46px;
		height: 46px;
		display: inline-block;
		object-fit: cover;
	}
	.site_logo_sub {
		/*font-size: 12px;*/
		font-size: min(3.2vw, 12px);
		line-height: 120%;
	}
	.site_logo_title {
		font-family: "Noto Serif JP", "Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝B" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
		/*font-size: 22px;*/
		font-size: min(5.5vw, 22px);
        font-weight: 700;
	}
	.site_logo_branch {
		color: #9E220E;
	}

	#outer{
		width: 100%;
		background: none;
	}
	#outer02 {
		width: 100%;
	}
	#header01{
		width: 100%;
		height: auto;
		position: sticky;
		left: 0;
		top: 0;
		background: #fff;
		z-index: 9999;
		border-bottom: 1px solid #ddd;
	}
	#header02{
		width: 100%;
		float: none;
		padding: 0 15px;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 1.5em;
/*
		border-bottom: 1px solid #eee;
*/
	}
	#header02 h1{
		font-size: 11px;
	}
	#header03{
		float: none;
		width: 100%;
		height: 54px;
		padding: 0;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 0 0 15px;
	}
	#header04{
		width: min(280px, calc(100% - 90px));
		margin: 0;
	}
	#header04 *{
		display: block;
		width: 100%;
	}
	#header05{
		display: none;
	}
	#menu-btn{
		position: relative;
/*
		width: 36px;
		height: 36px;
*/
		width: 54px;
		height: 100%;
		background: #0b68ba;
		cursor: pointer;
		z-index: 9999;
	}
	#menu-btn span{
		display: block;
		width: 55%;
		height: 2px;
		background: #fff;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		transition: .3s all ease;
	}
	#menu-btn span:nth-of-type(1){
		transform: translateY(-6px);
	}
	#menu-btn span:nth-of-type(3){
		transform: translateY(6px);
	}
	#menu-btn.opened span:nth-of-type(1){
		transform: translateY(0) rotate(45deg);
	}
	#menu-btn.opened span:nth-of-type(3){
		transform: translateY(0) rotate(-45deg);
	}
	#menu-btn.opened span:nth-of-type(2){
		opacity: 0;
	}

	.login-area{
		display: flex;
		justify-content: center;
		padding: 8px 15px;
	}
	.login-area a{
		width: 12em;
		color: #fff;
		border-radius: 6px;
		height: 50px;
		display: block;
		border: 1px solid #ddd;
/*
		margin-inline: 7px;
*/
		margin-inline: 5px;
		padding: 3px;
		line-height: 1.35;
	}
	.login-area a div{
		font-weight: 600;
		background: linear-gradient(#5bb1fd, #0b68ba 25%);
		/*font-size: 13px;*/
		font-size: 14px;
		border-radius: 3px;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.login-area a span:after{
		content: attr(data-en);
		display: block;
/*
		font-size: 10px;
*/
		font-size: 60%;
		font-family: "Jost", sans-serif;;
		font-weight: 300;
		letter-spacing: .1em;
	}

	.login-area a div span{
		display: block;
	}
	.login-area a:hover{
		text-decoration: none;
	}
	.login-area a div:before{
		content: "";
		display: block;
		width: 1.75em;
		height: 100%;
		background: url(../img/login-icon01.svg) no-repeat;
		background-position: center center;
		background-size: 100% auto;
		margin-right: .85em;
	}
	.login-area a:nth-of-type(2) div{
		background: linear-gradient(#fd5b5b, #b92109 25%);
	}

	/* +++nav+++ */
	nav{
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100vh;
		overflow: auto;
		background: #fff;
		padding-block: 85px 30px;
		transition: .3s all ease;
		visibility: hidden;
		opacity: 0;
	}
	nav.opened{
		visibility: visible;
		opacity: 1;
	}
	#global-navi{
		padding-inline: 15px;
		padding-bottom: 15px;
	}
	#global-navi li{
		border-bottom: 1px solid #eee;
	}
	#global-navi li a{
		padding: 15px;
		display: flex;
		justify-content: space-between;
		align-items: center;
		font-weight: 600;
		color: #000;
		text-decoration: none !important;
	}
	#global-navi li a span:after{
		content: attr(data-en);
		display: block;
		font-size: 75%;
		font-weight: 500;
		margin-top: 4px;
		line-height: 1;
		color: #73c3bb;
	}
	#global-navi li:nth-of-type(2) a span:after{
		color: #d4737a;
	}
	#global-navi li:nth-of-type(3) a span:after{
		color: #d4c773;
	}
	#global-navi li:nth-of-type(4) a span:after{
		color: #40c9c5;
	}
	#global-navi li:nth-of-type(5) a span:after{
		color: #b05dbe;
	}
	#global-navi li a:after{
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-left: 9px solid #0b68ba;
		border-top: 3px solid rgba(255,255,255,0);
		border-bottom: 3px solid rgba(255,255,255,0);
	}

	/* +++contents+++ */
	.contents{
		padding-top: 12px;
	}

	.contents,
	.contents>*{
		width: 100% !important;
		float: none;
		display: flex;
		flex-direction: column;
		background: none;
	}
	.menu{
		display: none;
	}
	.side_menu,
	.contents02{
		float: none;
		width: 100%;
		padding-inline: 15px;
	}
	.side_menu04 {
		width: 100%;
	}

	/* スマホサイド幅 */
	.side_sp_inner {
		width: 90%;
		margin: 0 auto;
	}

	.side_menu{
		/*width: 90% !important;*/
/*
		max-width: 280px;
*/
		margin-inline: auto;
		order: 2;
	}

	#side_qr{
		display: none;
	}
	.side_menu02{
		width: 100%;
	}
	.side_menu02 a,
	.side_menu02 a img{
		display: block;
		width: 100%;
		height: auto;
	}

	/* お知らせ・新着情報　SP日付と本文縦並び */
	.blog_2026 {
		display: block;
	}

	/* [会員一覧はこちら]ボタン */
	.side_menu02 a.link-btn_member {
	font-weight: 600;
	font-size: 20px;
	width: 100%;
	border-radius: 6px;
	display: block;
	padding: 4px;
	background: #0b68ba;
	color: #fff !important;
	text-decoration: none !important;
	margin: 0 auto;
	line-height: 1;
	clear: both;
	position: relative;
}
.link_btn_member_text {
	background: linear-gradient(#5bb1fd, #0b68ba 25%);
	/*justify-content: center;*/
	align-items: center;
	/*width: 100%;*/
	height: 100%;
	border-radius: 3px;
	/*padding: 1.4em 0 1.2em;*/
	padding: 0.9em 2.4em 0.7em 0.8em;
	line-height: 1.3;
}
.side_menu02 .link-btn_member .link_btn_member_text::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-left: .8em solid #fff;
	border-top: .4em solid transparent;
	border-bottom: .4em solid transparent;
	margin-left: 1em;
	position: absolute;
	top: 45%;
	right: 4%;
	transform: translateX(-50%);
}
.link_btn_member_text .text_small {
	margin-top: 8px;
	padding: 0 !important;
	font-size: 12px;
	font-weight: 400 !important;
	background: none !important;
	display: flex;
}
	/*
	.side_menu02 a.link-button01{
		width: 100% !important;
		margin-bottom: 0;
		aspect-ratio: 230 / 50;
		background: #0b68ba;
	}
	.side_menu02 a.link-button01 span{
    	padding: 0.9em 1.2em 0.7em;
		background: linear-gradient(#5bb1fd, #0b68ba 25%);
		font-size: 16px;
		position: relative;
	}
	.side_menu02 a.link-button01 span:after{
		margin-left: unset;
		position: absolute;
		top: 50%;
		right: 5%;
		transform: translateY(-50%);
	}
	*/

	.side_menu02_qr_text{
		margin-top: 5px;
	}
	.contents02{
		order: 1;
	}
	#fdda{
		order: 3;
	}
	.contents02>*{
		width: 100% !important;
	}
	.contents09{
		width: auto !important;
		display: inline-block;
	}
	.mb_30 {
		margin-bottom: 30px;
		display: flex;
	}
	.yrsi_contents01,
	.yrsi_contents01 *{
		display: block;
/*
		max-width: 234px;
*/
		margin-inline: auto;
	}
	#fdda{
		background: #0b68ba;
		font-size: 10px;
		height: auto;
		padding: .5em 0;
	}

/* +++page-title+++ */
	.main02{
		background: #0b68ba;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 80px;
		width: 100%;
	}
	.page-title{
		padding-inline: 15px;
		font-weight: 500;
		font-size: 20px;
	}


/* ++++見出し++++ */
	.sec-title01{
		font-size: 18px;
		margin-bottom: 16px;
		letter-spacing: .05em;
	}
	.sec-title01 span{
		min-height: 60px;
		height: auto;
		padding-block: 12px;
	}

/* +++sec-title02+++ */
	.sec-title02{
		font-size: 20px;
		margin-bottom: 12px;
/*
		padding-bottom: 12px;
*/
		padding-bottom: 10px;
	}
.caption{
	display: block;
}
/* +++++TOP Page+++++ */
	.contents13{
		width: 100%;
	}
	.contents13 .contents37{
		width: 100%;
		border-bottom: 1px dotted #ddd;
		padding-bottom: .75em;
		margin-bottom: .75em;
	}
	.contents07 tr td:nth-of-type(1){
		width: 15%;
	}
	.contents07 tr td:nth-of-type(2){
		width: 40%;
	}
	.contents07 tr td:nth-of-type(3){
		width: 30%;
	}
	.contents07 th,
	.contents07 td{
		padding: .4em !important;
		font-size: 16px;
	}
	.contents12{
		/*height: 240px;*/
		overflow: auto;
	}

	/* トップページ[無料税務相談]横スクロール */
	.contents07.consultation_schedule {
		width: 100%;
		/* margin-bottom: 4px; */
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.contents07.consultation_schedule table {
		min-width: 500px;
		border-collapse: separate;
		border-spacing: 0;
		border-left: none;
	}
	.contents07.consultation_schedule table tr td:first-child {
		position: -webkit-sticky;
		position: sticky;
		left: 0;
		z-index: 10;
		border-left: 1px solid #CCCCCC;
	}

/* +++main-visual+++ */
	.sp-mask,
	.sp-slide,
	.sp-slide *{
		height: 120vw !important;
	}
	.sp-slide img.pc-none{
		width: 100% !important;
		margin: 0 !important;
		aspect-ratio: 75 / 90;
	}

/* ++++greeting page+++++ */
	.contents16{
		padding: 0;
		width: 100%;
	}
	.greeting-pic img{
		max-width: 244px;
		margin: 0 auto 1em;
		display: block;
	}
	figcaption{
		display: block;
		text-align: center;
		font-weight: bold;
		margin-bottom: 20px;
	}
	.contents10{
		display: block;
	}
	.contents20{
		margin: 0 auto 15px;
		padding: 0;
		float: none;
	}
	.contents20 img{
		display: block;
		width: 100%;
	}
	.contents21,
	.contents22,
	.contents23{
		width: 100%;
		padding-left: 0;
	}

	.contents22 .contents23,
	.contents22 .contents24,
	.contents22 .contents25,
	.contents22 .contents27{
		width: 100%;
		padding-left: 0;
	}
	/* 小見出しと本文の余白 */
	.contents23 {
		padding-bottom: 5px;
	}
	.contents25 {
		padding-bottom: 30px;
	}
	.contents27 .contents26{
		display: inline-block;
		width: auto;
	}
	.contents28{
		width: 100%;
	}
	.googlemap>iframe{
		width: 100%;
		height: 100%;
		display: block;
	}
	.googlemap{
		height: 300px;
		padding-bottom: 0;
		margin-bottom: 1em;
	}
	.map-link{
		font-size: 12px;
		margin-bottom: 30px;
	}
	.contents18,
	.contents19{
		width: 100%;
		float: none;
	}



/* +++consultation+++ */
	.contents32,
	.contents33,
	.contents34{
		width: 100%;
		float: none;
	}

/* +++++.link-button01+++++ */
	.link-button01{
		width: 90%;
		margin-inline: auto;
		/*width: 234px !important;*/
/*
		height: 44px;
*/
		border-radius: 4px;
		padding: 2px;
	}
	.link-button01 span{
		padding: 1.2em 2.8em 1.1em;
		border-radius: 2px;
		justify-content: center;
	}

/* +++++.link-button02+++++ */
	.link-button02_wrapper {
	}

	/* モバイル　サイド区切り線 */
	.side_content_border {
		margin-bottom: 40px;
		border-bottom: 1px solid #ddd;
	}

	.link-button02{ 
        width: 90%;
        margin-inline: auto;

		/*width: 234px !important;*/
/*
		height: 44px;
*/
		border-radius: 4px;
		padding: 2px;
	}
	.link-button02 span{
		padding: 1.2em 1em 1.1em;
		border-radius: 2px;
    	justify-content: center;
	}
	.link-button02 span:after{
		top: 41%;
		right: 5%;
	}
}

@media screen and (min-width: 769px){
	.pc-none{
		display: none !important;
	}
}
@media screen and (max-width: 768px){
	.sp-none{
		display: none !important;
	}
}