/* ----------------------------------------------------------------------
 電話番号リンクをスマホのみ有効
---------------------------------------------------------------------- */
@media (min-width: 621px) {
	a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
}

/* ----------------------------------------------------------------------
 スマホ・PC画像振り分け
---------------------------------------------------------------------- */

@media screen and (min-width: 768px) ,print{
	.sp_only{
	display:none !important;
	}
}

@media screen and (max-width: 767px) {
	.pc_only{
	display:none !important;
	}
}

/* ----------------------------------------------------------------------
 破線hr
---------------------------------------------------------------------- */

hr.hasen{
border:none;
border-top:dashed 1px #999;
height:1px;
color:#FFFFFF;
margin:15px 0 !important;
}

/* ----------------------------------------------------------------------
 画像リンク
---------------------------------------------------------------------- */
a:hover img{
filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;
}

/* ----------------------------------------------------------------------
 フォントファミリー
---------------------------------------------------------------------- */
.yu_font{
font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.yugo_font{
font-family: "游ゴシック体", YuGothic, "YuGothic M", sans-serif !important;
}

/* ----------------------------------------------------------------------
 AdobeFont
---------------------------------------------------------------------- */
.ud_fontR{
font-family: fot-udkakugo-large-pr6n,sans-serif;
font-weight: 500;
font-style: normal;
}
.ud_fontB{
font-family: fot-udkakugo-large-pr6n,sans-serif;
font-weight: 600;
font-style: normal;
}
.cent_fontR{
font-family: century-gothic,sans-serif;
font-weight: 400;
font-style: normal;
}
.cent_fontB{
font-family: century-gothic,sans-serif;
font-weight: 700;
font-style: normal;
}
.din_fontR{
	font-family: din-2014,sans-serif;
	font-weight: 400;
	font-style: normal;
}
.din_fontB{
	font-family: din-2014,sans-serif;
	font-weight: 700;
	font-style: normal;
}


/* =================================
font（weight）
================================= */
.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal !important;
}


/* =================================
font（size %）
================================= */
.font50 {
	font-size: 50% !important;
}
.font60 {
	font-size: 60% !important;
}
.font70 {
	font-size: 70% !important;
}
.font80 {
	font-size: 80% !important;
}
.font90 {
	font-size: 90% !important;
}
.font100 {
	font-size: 100% !important;
}
.font110 {
	font-size: 110% !important;
}
.font120 {
	font-size: 120% !important;
}
.font130 {
	font-size: 130% !important;
}
.font150 {
	font-size: 150% !important;
}

/* =================================
font（size px）
================================= */
.font10px{
	font-size: 10px;
}
.font12px{
	font-size: 12px;
}
.font14px{
	font-size: 14px;
}
.font16px{
	font-size: 16px;
}
.font18px{
	font-size: 18px;
}
.font20px{
	font-size: 20px;
}
.font25px{
	font-size: 25px;
}
.font30px{
	font-size: 30px;
}
.font32px{
	font-size: 32px;
}
.font35px{
	font-size: 35px;
}
@media screen and (min-width: 768px) ,print{
	.font10-12px{
		font-size: 12px;
	}
	.font12-14px{
		font-size: 14px;
	}
	.font14-16px{
		font-size: 16px;
	}
	.font16-18px{
		font-size: 18px;
	}
	.font16-20px{
		font-size: 20px;
	}
	.font18-20px{
		font-size: 20px;
	}
	.font18-25px{
		font-size: 25px;
	}
	.font20-25px{
		font-size: 25px;
	}
	.font20-30px{
		font-size: 30px;
	}
	.font23-30px{
		font-size: 30px;
	}
	.font25-30px{
		font-size: 30px;
	}
	.font30-35px{
		font-size: 35px;
	}
	.font30-40px{
		font-size: 40px;
	}
}
@media screen and (max-width: 767px) {
	.font10-12px{
		font-size: 10px;
	}
    .font12-14px{
		font-size: 12px;
	}
	.font14-16px{
		font-size: 14px;
	}
	.font16-18px{
		font-size: 16px;
	}
	.font16-20px{
		font-size: 16px;
	}
	.font18-20px{
		font-size: 18px;
	}
	.font18-25px{
		font-size: 18px;
	}
	.font20-25px{
		font-size: 20px;
	}
	.font20-30px{
		font-size: 20px;
	}
	.font23-30px{
		font-size: 23px;
	}
	.font25-30px{
		font-size: 25px;
	}
	.font30-35px{
		font-size: 30px;
	}
	.font30-40px{
		font-size: 30px;
	}
}

/* =================================
font（color）
================================= */

.white{
	color:#fff;
}
.yellow{
	color:#ffff00;
}
.sky{
	color:#2D9BE1;
}
.gray{
	color:#999;
}
.black{
	color: #333;
}
.pink{
	color:#ff8787;
}

/* =================================
テキスト揃え
================================= */
.txtJustify{
	text-align:justify;
}
.txtCenter{
	text-align:center;
}
.txtLeft{
	text-align:left;
}
.txtRight{
	text-align:right;
}

/* =================================
テキスト行間
================================= */
.lh10{
	line-height:1em;
}
.lh15{
	line-height:1.5em;
}
.lh18{
	line-height:1.8em;
}
.lh20{
	line-height:2.0em;
}
.lh25{
	line-height:2.5em;
}

/* =================================
文字間
================================= */
.ls01{
	letter-spacing: 0.1em;
}
.ls02{
	letter-spacing: 0.2em;
}

/* =================================
改行
================================= */

/*スマホのみ改行*/
@media screen and (min-width: 768px) ,print{
    .kaigyouSp {
     display: none;
    }
}
/*PCのみ改行*/
@media screen and (max-width: 767px) {
    .kaigyouPc {
        display: none;
    }
}

/* =================================
見出し
================================= */
/*真ん中揃え　アンダーライン（ブルー）*/
.midashi01 {
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
}
.midashi01:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 100px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #2D9BE1;
  border-radius: 2px;
}

/*真ん中揃え　アンダーライン（イエロー）*/
.midashi02 {
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
	color:#FFF1AC;
}
.midashi02:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 100px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #FFF1AC;
  border-radius: 2px;
}

/*アンダーライン（色分け）*/
.midashi03 {
  border-bottom: solid 3px #a0caec;
  position: relative;
}
.midashi03:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffff00;
  bottom: -3px;
  width: 30%;
}


/* =================================
背景色
================================= */
.bgWhite{
	background: #fff;
}
.bgGray{
	background: #F2F2F2;
}
.bgSky{
	background:#2D9BE1;
}
.bgWhiteSky{
	background:#2a9dff26;
}
.bgLiteSky{
	background:#A0CAEC;
}
.bgYellow{
	background:#ffff00;
}


/* =================================
角丸
================================= */
.radius10{
	border-radius:10px;
}
.radius15{
	border-radius:15px;
}
.radius20{
	border-radius:20px;
}

/* ----------------------------------------------------------------------
 ボタン
---------------------------------------------------------------------- */
/*ボタンサイズ（100%）*/
.button100{
  width: 100%;	
}
/*ボタンサイズ（250px）*/
.button250{
  width: 250px;	
}
/*ボタンサイズ（300px）*/
.button300{
  width: 300px;	
}
/*ボタンサイズ（350px）*/
.button350{
  width: 350px;	
  max-width:100%;
}

/*ボタン（真ん中揃え）*/
.buttonCenter{
	margin-left:auto;
	margin-right:auto;
}

/*ボタン矢印*/
.buttonBase span{
	display:block;
	position:relative;
}
.buttonBase span::after{
	position:absolute;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f054";
	top: 50%;
	right: 5px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

/*ボタン（ベース）*/
.buttonBase {
  display: block;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
}
.buttonBase::before,
.buttonBase::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.buttonBase,
.buttonBase::before,
.buttonBase::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

/*ボタン０１*/
.btn01 {
  position: relative;
  z-index: 2;
  border: 2px solid #2D9BE1;
  background:#2D9BE1;
  color: #fff !important;
  line-height: 50px;
  -webkit-perspective: 300px;
  perspective: 300px;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.btn01:hover {
  color: #2D9BE1 !important;
}
.btn01::after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-transform-origin: center top;
  transform-origin: center top;
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  opacity: 0;
}
.btn01:hover::after {
  -webkit-transform: rotateX(0);
  transform: rotateX(0);
  opacity: 1;
}

/*ボタン０2*/
.btn02 {
  position: relative;
  z-index: 2;
  border: 2px solid #2D9BE1;
  background:#FFF1AC;
  color: #2D9BE1 !important;
  line-height: 50px;
  -webkit-perspective: 300px;
  perspective: 300px;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.btn02:hover {
  color: #FFF1AC !important;
}
.btn02::after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #2D9BE1;
  -webkit-transform-origin: center top;
  transform-origin: center top;
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg);
  opacity: 0;
}
.btn02:hover::after {
  -webkit-transform: rotateX(0);
  transform: rotateX(0);
  opacity: 1;
}


/* ----------------------------------------------------------------------
 マーカーアニメーション
---------------------------------------------------------------------- */
 
.marker-animation.active{
    background-position: -100% .5em;
}
.marker-animation {
    background-repeat: repeat-x;
    background-size: 200% .8em;
    background-position: 0 .5em;
    transition: all 2s ease;
    font-weight: bold;
}
.marker-animation01{/*黄色*/
    background-image: -webkit-linear-gradient(left, transparent 50%, rgb(255,255,100) 50%);
    background-image: -moz-linear-gradient(left, transparent 50%, rgb(255,255,100) 50%);
    background-image: -ms-linear-gradient(left, transparent 50%, rgb(255,255,100) 50%);
    background-image: -o-linear-gradient(left, transparent 50%, rgb(255,255,100) 50%);
    background-image: linear-gradient(left, transparent 50%, rgb(255,255,100) 50%);
}

/* =================================
 margin・padding
================================= */

/*margin right*/
.mr05 {
  margin-right: 5px;
}
.mr10 {
  margin-right: 10px;
}
.mr15 {
  margin-right: 15px;
}
.mr20 {
  margin-right: 20px;
}
.mr25 {
  margin-right: 25px;
}
.mr30 {
  margin-right: 30px;
}
.mr35 {
  margin-right: 35px;
}
.mr40 {
  margin-right: 40px;
}
.mr45 {
  margin-right: 45px;
}
.mr50 {
  margin-right: 50px;
}
/*margin left*/
.ml05 {
  margin-left: 5px;
}
.ml10 {
  margin-left: 10px;
}
.ml15 {
  margin-left: 15px;
}
.ml20 {
  margin-left: 20px;
}
.ml25 {
  margin-left: 25px;
}
.ml30 {
  margin-left: 30px;
}
.ml35 {
  margin-left: 35px;
}
.ml40 {
  margin-left: 40px;
}
.ml45 {
  margin-left: 45px;
}
.ml50 {
  margin-left: 50px;
}
/*margin top*/
.mt00 {
  margin-top: 0px !important;
}
.mt05 {
  margin-top: 5px;
}
.mt10 {
  margin-top: 10px;
}
.mt15 {
  margin-top: 15px;
}
.mt20 {
  margin-top: 20px;
}
.mt25 {
  margin-top: 25px;
}
.mt30 {
  margin-top: 30px;
}
.mt35 {
  margin-top: 35px;
}
.mt40 {
  margin-top: 40px;
}
.mt45 {
  margin-top: 45px;
}
.mt50 {
  margin-top: 50px;
}
.mt80 {
  margin-top: 80px;
}
.mt100 {
  margin-top: 100px;
}
/*margin bottom*/
.mb00 {
  margin-bottom: 0px !important;
}
.mb05 {
  margin-bottom: 5px;
}
.mb10 {
  margin-bottom: 10px;
}
.mb15 {
  margin-bottom: 15px;
}
.mb20 {
  margin-bottom: 20px;
}
.mb25 {
  margin-bottom: 25px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb35 {
  margin-bottom: 35px;
}
.mb40 {
  margin-bottom: 40px;
}
.mb45 {
  margin-bottom: 45px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb80 {
  margin-bottom: 80px;
}
.mb100 {
  margin-bottom: 100px;
}
/*padding right*/
.pr05 {
  padding-right: 5px;
}
.pr10 {
  padding-right: 10px;
}
.pr15 {
  padding-right: 15px;
}
.pr20 {
  padding-right: 20px;
}
.pr25 {
  padding-right: 25px;
}
.pr30 {
  padding-right: 30px;
}
.pr35 {
  padding-right: 35px;
}
.pr40 {
  padding-right: 40px;
}
.pr45 {
  padding-right: 45px;
}
.pr50 {
  padding-right: 50px;
}
/*padding left*/
.pl05 {
  padding-left: 5px;
}
.pl10 {
  padding-left: 10px;
}
.pl15 {
  padding-left: 15px;
}
.pl20 {
  padding-left: 20px;
}
.pl25 {
  padding-left: 25px;
}
.pl30 {
  padding-left: 30px;
}
.pl35 {
  padding-left: 35px;
}
.pl40 {
  padding-left: 40px;
}
.pl45 {
  padding-left: 45px;
}
.pl50 {
  padding-left: 50px;
}
/*padding top*/
.pt05 {
  padding-top: 5px;
}
.pt10 {
  padding-top: 10px;
}
.pt15 {
  padding-top: 15px;
}
.pt20 {
  padding-top: 20px;
}
.pt25 {
  padding-top: 25px;
}
.pt30 {
  padding-top: 30px;
}
.pt35 {
  padding-top: 35px;
}
.pt40 {
  padding-top: 40px;
}
.pt45 {
  padding-top: 45px;
}
.pt50 {
  padding-top: 50px;
}
.pt80 {
  padding-top: 80px;
}
@media screen and (min-width: 1200px) {
	.pcpt80 {
	  padding-top: 80px;
	}
}
.pt100 {
  padding-top: 100px;
}
/*padding bottom*/
.pb05 {
  padding-bottom: 5px;
}
.pb10 {
  padding-bottom: 10px;
}
.pb15 {
  padding-bottom: 15px;
}
.pb20 {
  padding-bottom: 20px;
}
.pb25 {
  padding-bottom: 25px;
}
.pb30 {
  padding-bottom: 30px;
}
.pb35 {
  padding-bottom: 35px;
}
.pb40 {
  padding-bottom: 40px;
}
.pb45 {
  padding-bottom: 45px;
}
.pb50 {
  padding-bottom: 50px;
}
.pb80 {
  padding-bottom: 80px;
}
.pb100 {
  padding-bottom: 100px;
}
  
/*All padding*/
.pd10{
	padding:10px;
	box-sizing:border-box;
}
.pd15{
	padding:15px;
	box-sizing:border-box;
}
.pd20{
	padding:20px;
	box-sizing:border-box;
}
.pd25{
	padding:25px;
	box-sizing:border-box;
}
.pd30{
	padding:30px;
	box-sizing:border-box;
}


/* =================================
 画像サイズ（レスポンシブ仕様）
================================= */
img.img100{
	width:100%;
	max-width: 100%;
	line-height: 0;
	vertical-align: bottom;
	display: block;
}
img.imgCenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width:100%;
}
img.imgLeft{
	display: block;
	margin-right: auto;
	max-width:100%;
}
img.imgRight{
	display: block;
	margin-left: auto;
	max-width:100%;
}

img.imgNew01{
width:45px;
}

/* ----------------------------------------------------------------------
 inner
---------------------------------------------------------------------- */
.inner01{
	width:100%;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
}
.inner02{
	width:1150px;
	max-width: calc(100% - 30px);
	margin-left:auto;
	margin-right:auto;
}
.inner03{
	width:768px;
	max-width: calc(100% - 30px);
	margin-left:auto;
	margin-right:auto;
}
.inner04{
	width:90%;
	max-width: calc(100% - 30px);
	margin-left:auto;
	margin-right:auto;
}

/* =================================
 float
================================= */
.left{
	float: left;
}
.right{
	float: right;
}

/* ----------------------------------------------------------------------
 flexbox
---------------------------------------------------------------------- */
.flexOrigin{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: stretch;    /*全ての要素の高さを揃える*/
}
.flex-wrap{
	flex-wrap:wrap; 	/*要素を折り返して繰り返す*/
}
.space-between{
	justify-content: space-between; /*均等に間隔をあける*/
}
.row-reverse{
	flex-flow: row-reverse; /*並び順を逆にする*/
}
.border-box{
	box-sizing:border-box;
}
@media(max-width:767px)  {
	.flex_block{
		display: block;
	}
}

@media screen and (min-width: 768px) ,print{
	.flexBox2{
	width:48%;
	}
	.flexBox3{
	width:31%;
	}
	.flexBox4{
	width:23%;
	}
}
@media screen and (max-width: 767px) {
	.flexBox2{
		width:100%;
		margin-bottom:30px;
	}
	.flexBox3{
		width:100%;
		margin-bottom:30px;
	}
	.flexBox4{
		width:48%;
		margin-bottom:30px;
	}
}

/* =================================
 ページ内リンク
================================= */
 @media screen and (min-width: 1200px){
	a.scroll_point {
	 height: 0;
	 margin-top: -160px;
	 padding-top: 160px;
	 display: block;
	}
}
 @media screen and (max-width: 1200px){
	 a.scroll_point {
	 height: 0;
	 display: block;
	 margin-top: -55px;
	 padding-top: 55px;
	}
}

/* =================================
 ページ全体
================================= */
body{
	color:#333;
}

/* ----------------------------------------------------------------------
 デフォルトCSSの解除
---------------------------------------------------------------------- */
@media screen and (min-width: 1200px) ,print {
	/*ヘッダー部分*/
	.header-bar{
		height:160px;
		background:rgba(255,255,255,0.8);
	}
	.header-bar-fixed ~ .signage{
		margin-top:160px;
	}
	/*ロゴ*/
	.logo-image{
		top:20px;
	}
	.logo{
		height:50px;
	}
	/*グローバルメニュー */
	.global-nav{
		margin-left:auto;
		margin-right:auto;
		float:none;
		max-width:1150px;
		width:calc(100% - 30px);
	}
	.global-nav ul.menu{
		width:100%;
		margin-left:auto;
		margin-right:auto;
		text-align:center;
	}
	.global-nav > ul > li{
		font-weight: bold;
		float:none;
		display:inline-block;
	}
	.global-nav > ul > li > a{
		line-height:63px;
		padding:0 20px;
	}
	/*キービジュアル*/
	.mv{
		margin-top:160px;
	}
}
@media screen and (max-width: 1200px) {
	/*ヘッダー部分*/
	.header-bar{
		background:rgba(255,255,255,0.8);
	}
	/*ロゴ*/
	.logo{
		top:15px;
	}
	.logo img{
		display:block;
		width:150px;
	}
	/*キービジュアル*/
	.mv{
		margin-top:55px;
	}
}

.head_top{
	position:relative;
}
@media screen and (min-width: 1200px) {
	.head_top{
		max-width:1150px;
		width:calc(100% - 30px);
		height:95px;
		margin:0 auto;
	}
}

/* ----------------------------------------------------------------------
ヘッダーインフォメーション
---------------------------------------------------------------------- */
.head_info{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: stretch;    /*全ての要素の高さを揃える*/
	justify-content: space-between; 
}
@media screen and (min-width: 1200px) {
	.head_info{
		float:right;
		width:450px;
		padding-top:20px;
	}
	.head_info_sp{
		display:none;
	}
	.head_info01{
		width:250px;
	}
	.head_info02,.head_info03{
		width:150px;
	}
}
@media screen and (max-width: 1200px) {
	.head_info_pc{
		display:none;
	}
	.head_info{
		width:100px;
		position:absolute;
		top:5px;
		right:60px;
	}
	.head_info01{
		width:45px;
	}
	.head_info02{
		width:45px;
	}
	.head_info03{
		width:45px;
	}
}

/* ----------------------------------------------------------------------
 メインビジュアル
---------------------------------------------------------------------- */
.mv{
	background:#2D9BE1;
	padding-top:30px;
}
.mv_balloon {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 12px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #2D9BE1;
  font-size: 16px;
  background: #FFFF00;
	border-radius:5px;
}
.mv_balloon p {
	color: #2D9BE1;
}
.mv_balloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #FFFF00;
}
@media screen and (max-width: 768px) {
.mv_balloon p{
	font-size: 14px !important;
}
}

/* =================================
 ヘッダーイメージ
================================= */
.headImg{
  /* padding: 30px 0 0; */
	background: #2D9BE1;
	background-size: cover;
}
.headImg img{
	display: block;
	width:100%;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width: 768px) {
  .headImg{
    /* padding: 20px 0 0; */
  }

}

/* =================================
 スマホ・PC画像振り分け
================================= */

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

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

/* =================================
 ページ内容（トップページ）
================================= */

/*メニューイメージ*/
.menuImg{
	background: #fff;
	padding-top:40px;
	padding-bottom: 20px;
}
.menuImgBox{
	width:23%;
	margin-left:1%; 
	margin-right:1%; 
}
.menuImgBox p{
	/* margin-top: 10px; */
	text-align: center;
	font-size:100%;
}
@media(max-width:600px)  {
	.menuImgBox p{
	font-size:65%;
	}
}

/* ----------------------------------------------------------------------
 signage
---------------------------------------------------------------------- */
.signage-content{
	animation:none;
}

/* ----------------------------------------------------------------------
 footer
---------------------------------------------------------------------- */
img.footcar{
	display:block;
	margin-left:auto;
}
.footSitemapLink{
	background:#fff;
	border-radius:10px;
	padding:20px;
	box-sizing:border-box;
}
@media screen and (max-width: 768px) {
	img.footcar{
		width:65px;
	}
}
.footSitemap .footSitemapWrap{
	background:#2D9BE1;
	padding:30px 0;
}

.footer-bar01,.copyright,.pagetop a{
	background:#A0CAEC;
}

@media screen and (min-width: 769px),print {
	.footSitemapInfo{
		width:370px;
	}
	.footSitemapLink{
		width:calc(100% - 400px);
	}
}
@media screen and (max-width: 768px){
	.footSitemapBox{
		display:block;
	}
	.footSitemapInfo{
		margin-bottom:20px;
	}
	.footSitemapInfo,.footSitemapLink{
		width:100%;
	}
}
a.footTel::before{
	content: url(images/ico_freedial.png);
	margin-right: 10px;
	position: relative;
	top: 3px;
}
a.footTel:hover{
	color:#fff;
}
ul.footsitemapUl01 li,ul.footsitemapUl02 li{
	line-height:2.3em;
	font-weight:bold;
}
ul.footsitemapUl01 li a,ul.footsitemapUl02 li a{
	color:#333;
}
ul.footsitemapUl01 > li > a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0da";
	color:#2D9BE1;
	margin-right:0.5em;
}
ul.footsitemapUl02 {
	margin-left:0.5em;
}
ul.footsitemapUl02 > li > a::before{
	content:"・";
	margin-right:0.1em;
}
@media screen and (max-width: 768px){
	.footSitemapLink .flexBox3{
		margin-bottom:0;
	}
}

/* ----------------------------------------------------------------------
 共通パーツ
---------------------------------------------------------------------- */
/*キャンペーン*/
a.campaignBnr{
	display:block;
	width:calc(100% - 30px);
	max-width:768px;
	margin-left:auto;
	margin-right:auto;
}
.campaignWrap{
	background:#FFFF00;
	border:3px solid #2D9BE1;
}
.campaignTxt{
	background:#2D9BE1;
	padding:20px;
	box-sizing:border-box;
}
p.limit{
	background:#fff;
	border-radius:100px;
	padding:10px 70px;
	box-sizing:border-box;
	display:inline-block;
	font-weight:bold;
}

/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */
/*業務案内*/
.top_works{
	background:url(images/bg_dot.png) repeat;
}
.top_works_wrap{
	background:#fff;
	border:3px #2D9BE1 solid;
	padding:20px;
	box-sizing:border-box;
	border-radius:15px;
}
h4.top_works_tit{
	background:#2D9BE1;
	padding:10px;
	box-sizing:border-box;
}
@media screen and (max-width: 767px){
	img.top_works_img{
		width:60%;
	}
}

/*４つの理由*/
.top_reason_box{
	width:49%;
}
.top_reason_box:nth-child(1),.top_reason_box:nth-child(2){
	margin-bottom:30px;
}
@media screen and (max-width: 768px){
	.top_reason_box{
		width:100%;
		margin-bottom:30px;
	}
	.top_reason_box:last-child{
		margin-bottom:0px;
	}
}
.top_reason_tag{
	border-radius: 10px 10px 0px 0px;
	background:#fff;
	border:2px #2D9BE1 solid;
	padding:10px;
	box-sizing:border-box;
	width:150px;
}
.top_reason_tag p::before{
	content: url(images/ico_top_reason.png);
	margin-right: 0.5em;
	position: relative;
	top: 2px;
}
.top_reason_box_inner{
	background:#FFF1AC;
	border:2px #2D9BE1 solid;
	padding:20px;
	box-sizing:border-box;
	border-radius:10px;
}
.top_reason_tit_ico{
	width:80px;
	margin-right:20px;
}
.top_reason_tit_ico img{
	display:block;
	width:100%;
}
.top_reason_tit_txt{
	width:calc(100% - 100px);
}
@media screen and (min-width: 767px),print{
	.top_reason_box_inner{
		height: calc(100% - 30px);
	}
}
@media screen and (max-width: 767px){
	.top_reason_tit_ico{
	width:55px;
	margin-right:5px;
}
.top_reason_tit_txt{
	width:calc(100% - 60px);
}
}

/*お知らせ投稿*/
.newsTxt{
	width:55%;
}
.newsImg{
	width:40%;
}
@media screen and (max-width: 767px){
	.newsTxt{
		margin-bottom:20px;
	}
	.newsTxt,.newsImg{
		width:100%;
	}
}
ul.top_postlist{
	margin-bottom:20px;
}
ul.top_postlist li{
	line-height:2em;
	border-bottom:1px #A0CAEC solid;
	padding-bottom:10px;
	margin-bottom:10px;
}

/*ブログ投稿*/
.article03{
	background:#fff;
}

/*対応エリア*/
.topAreaTit{
	background:#FFF1AC;
	border-top:3px #2D9BE1 solid;
	border-bottom:3px #2D9BE1 solid;
}
.areaBox{
	background:#FFF1AC;
	border-radius:10px;
	padding:20px;
	box-sizing:border-box;
}
h4.areaBoxTit{
	background:#2D9BE1;
	color:#FFF1AC;
	padding:10px;
	box-sizing:border-box;
	border-radius:10px;
	margin-bottom:15px;
}

/* ----------------------------------------------------------------------
 業務内容
---------------------------------------------------------------------- */
.works_content{
	background:url(images/bg_dot.png) repeat;
}
.worksWrap{
	position:relative;
	background:#fff;
	border-radius:10px;
	border:3px #2d9be1 solid;
}
.worksTag{
	position:absolute;
	top:30px;
	left:-10px;
	background:#ffff00;
	padding:15px 10px 10px;
	box-sizing:border-box;
	border:3px #288ceb solid;
}
.worksBoxImg{
	width:320px;
}
.worksBoxTxt{
	width:calc(100% - 350px);
}
@media screen and (max-width: 767px){
	.worksBoxImg{
		margin-bottom:30px;
	}
	.worksBoxImg,.worksBoxTxt{
		width:100%;
	}
}

/* ----------------------------------------------------------------------
 よくある質問
---------------------------------------------------------------------- */
.faq_bg{
	border-radius: 10px;
}

.faqQ{
  	position: relative;
	padding: 16px 0px 10px 65px;
}
.faqQ:before {
  	content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_faq_q.png');
	position: absolute;
	top: 15px;
	left: 0;
	margin: 0 10px 0 0;
}
.faqA{
  	position: relative;
    padding: 16px 0px 10px 65px;
}
.faqA:before {
  	content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_faq_a.png');
	position: absolute;
	top: 15px;
	left: 0;
	margin: 0 10px 0 0;
}

/* ----------------------------------------------------------------------
 お客様の声
---------------------------------------------------------------------- */
.voBox{
	box-sizing: border-box;           /* 罫線も含む長さ       */
	max-width: 100%;                /* BOXの最大幅          */
	border-radius : 10px;
	background-color: #fff;
}
.voBox_Sk{
	border: 3px solid #a0caec;
}

.voTit{
	display:inline-block;
	padding:5px 15px;
}

/* ----------------------------------------------------------------------
 会社概要
---------------------------------------------------------------------- */
table.cpTb{
	width:100%;
	box-sizing:border-box;
}
table.cpTb th,table.cpTb td{
	padding:20px 15px;
	box-sizing:border-box;
	text-align:left;
}
table.cpTb th{
	color: #2D9BE1;
	width:150px;
	padding-left:40px;

}
table.cpTb td{
	letter-spacing: 0.1em;
}

table.cpTb tr:nth-child(odd){	
	background: #e2f0ff;
}
table.cpTb tr:nth-child(even){
	background:#fff;
}
table.cpTb tr{
	line-height:1.8em;
}

@media screen and (max-width: 767px){
	table.cpTb th,table.cpTb td{
		padding:15px 10px;
		box-sizing:border-box;
		text-align:left;
	}
		table.cpTb th{
		color: #2D9BE1;
		width:110px;
		padding-left:30px;
	}
}

/* ----------------------------------------------------------------------
 スタッフ紹介
---------------------------------------------------------------------- */
.sta_bg{
	border-radius: 10px;
}

@media screen and (min-width: 768px) ,print{
		.staTex_01{
		width:75%;
	}
	.staTB td{
		padding: 10px 0;
		border-bottom: 1px solid black;
	}
	.staTd_01{
		width:25%;
	}
	.staTd_02{
		width:75%;
	}
}
@media screen and (max-width: 767px){
	.staImg{
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-bottom:20px;
		max-width:100%;
	}
	.staName_01{
		text-align: center;
	}
		table.staTB{
			width: 320px !important;
			margin: auto;
			max-width: 100%;
	}
	.staTB td{
		padding: 10px;
    border-bottom: 1px solid black;
	}
	.staTd_01{
		width:50px;
	}
	.staTd_02{
		width:100px;
	}
}

/* ----------------------------------------------------------------------
 出張買取
---------------------------------------------------------------------- */

	
.dtdWrap{
	position:relative;
	background:#fff;
	border-radius:10px;
	border:3px #2d9be1 solid;
}
.dtd_content_01{
	background:url(images/bg_dot.png) repeat;
}
.dtd_content_02{
	border-radius:10px;
}

@media screen and (min-width: 768px) ,print{
	.dtdPoint{
		position: relative;
		padding: 16px 0px 25px 40px;
	}
	.dtdPoint:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_visit.png');
		position: absolute;
		top: 5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.dtdImg{
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-top:-20px;
	}
	
	.priTex_02{
		text-align:center;
	}
}
@media screen and (max-width: 767px){
	.dtdPoint{
		position: relative;
		padding: 16px 0px 25px 40px;
	}
	.dtdPoint:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_visit.png');
		position: absolute;
		top: 5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.dtdImg{
		display: block;
		text-align:center;
		padding-top:10px;
	}
	
	.priTex_02{
		text-align:left;
	}
}

/* ----------------------------------------------------------------------
 料金表
---------------------------------------------------------------------- */
.priWrap{
	position:relative;
	background:#fff;
	border-radius:10px;
	border:3px #2d9be1 solid;
}
.priPlan{
	width:600px;
	max-width:calc(100% - 20px);
	background:#ffff00;
	margin:auto;
	position: relative;
	box-sizing: border-box;
	padding-top: 10px!important;
	padding-bottom: 10px!important;
}
.priPlan:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #ffff00 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}


@media screen and (min-width: 768px) ,print{
	.pri_content_01{
		position: relative;
		padding: 10px 0px 15px 80px;
		border-bottom: 1px solid #2d9be1;
	}
	.pri_content_01:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price01.png');
		position: absolute;
		top: -5px;
		left: 0;
		margin: 0 10px 0 0;
	}
.pri_content_02{
		position: relative;
		padding: 10px 0px 15px 80px;
		border-bottom: 1px solid #2d9be1;
	}
	.pri_content_02:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price02.png');
		position: absolute;
		top: -5px;
		left: 0;
		margin: 0 10px 0 0;
	}
.pri_content_03{
		position: relative;
		padding: 10px 0px 15px 80px;
		border-bottom: 1px solid #2d9be1;
	}
	.pri_content_03:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price03.png');
		position: absolute;
		top: -5px;
		left: 0;
		margin: 0 10px 0 0;
	}
.pri_content_04{
		position: relative;
		padding: 10px 0px 15px 80px;
		border-bottom: 1px solid #2d9be1;
	}
	.pri_content_04:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price04.png');
		position: absolute;
		top: -5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.priflexBox{
		width:55%;
	}
	.priTd_01{
		border-right: 1px solid #000;
		border-left: 1px solid #000;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
		padding-top:5px;
		padding-bottom:5px;
		text-decoration: line-through;
		width:90px;
		vertical-align: middle;
	}
	.priTd_02{
		padding-left:10px;
		text-decoration: line-through;
		vertical-align: middle;
	}
	.priImg{
		width:40%;
		display: block;
		margin-left: auto;
	}
}
@media screen and (max-width: 767px){
	.pri_content_01{
		position: relative;
		padding: 0px 0px 5px 80px;
		border-bottom: 1px solid #2d9be1;
		line-height:1.5em;
	}
	.pri_content_01:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price01.png');
		position: absolute;
		top: 5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.pri_content_02{
		position: relative;
		padding: 0px 0px 5px 80px;
		border-bottom: 1px solid #2d9be1;
		line-height:1.5em;
	}
	.pri_content_02:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price02.png');
		position: absolute;
		top: 5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.pri_content_03{
		position: relative;
		padding: 0px 0px 5px 80px;
		border-bottom: 1px solid #2d9be1;
		line-height:1.5em;
		}
	.pri_content_03:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price03.png');
		position: absolute;
		top: 5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.pri_content_04{
		position: relative;
		padding: 0px 0px 5px 80px;
		border-bottom: 1px solid #2d9be1;
		line-height:1.5em;
	}
	.pri_content_04:before {
		content: url('https://white-rock.jp/wp/wp-content/uploads/2021/07/ico_price04.png');
		position: absolute;
		top: 5px;
		left: 0;
		margin: 0 10px 0 0;
	}
	.priflexBox{
		
	}
	.priTd_01{
		border-right: 1px solid #000;
		border-left: 1px solid #000;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
		padding-top:5px;
		padding-bottom:5px;
		text-decoration: line-through;
		width:78px;
		vertical-align: middle;
	}
	.priTd_02{
		padding-left:10px;
		text-decoration: line-through;
		vertical-align: middle;
	}
	.priFlex{
		flex-direction: column-reverse;
	}
	.priImg{
		display: block;
		text-align:center;
	}
}
/* ----------------------------------------------------------------------
 お問い合わせ
---------------------------------------------------------------------- */
.contact .wpcf7{
	border:none;
	background:none;
}
.wpcf7 form{
	margin-left:0;
	margin-right:0;
}
.contact .wpcf7 input,.contact .wpcf7 textarea,.contact .wpcf7 select{
	border:none;
	background:#f2f2f2;
}
.contact table.formTable{
	border-collapse: collapse;
	width:100%;
}
.contact .formTable th,.contact .formTable td{
	padding: 10px;
	border:none;
	background:none;
	line-height:1.5em;
}
.contact .formTable th{
	vertical-align: top;
	text-align:left;
	color:#33475a;
	padding-left:1em;
	text-indent:-1em;
}
.contact .formTable th::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0da";
	margin-right:0.5em;
}
.contact input[type=text],textarea {
  width:100% !important;
}

table.formTable input[type=text],
table.formTable textarea{
	border: none;
	padding:10px 10px;
	background: #f2f2f2;
	border: none;
}
table.formTable td.hissu,table.formTable td.nini{
	vertical-align: top;
}
table.formTable td.hissu div,table.formTable td.nini div{
	font-size:14px;
	font-weight:bold;
}
table.formTable td.hissu div,table.formTable td.nini div{
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
}
table.formTable td.hissu div{
	background: #2D9BE1;
	border:1px #2D9BE1 solid;
	color: #fff;
}
table.formTable td.nini div{
	background: #fff;
	border:1px #2D9BE1 solid;
	color: #2D9BE1;
}
.contact .wpcf7 input.wpcf7-submit{
	background:#0077c2;
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
}
.contact-form-btn-wrap{
	text-align: center;
	margin-bottom: 1em;
    font-size: 12px;
}
.contact-form-btn{
	background:#0077c2;
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
	position: relative;
    display: block;
    width: 225px;
    height: 48px;
    margin: 30px auto 0;
    /*  background-color: #333333; */
    cursor: pointer;
    border: none !important;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
    outline: none;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.contact .formTable td.answer .horizontal-item{
	display: block;
}
.contact .formTable td.answer .horizontal-item:first-child {
    margin-left: 10px;
}
.contact .answer select{
	border:none;
	background:#f2f2f2;
	width: 70px;
}
.contact-form-select{
	margin-bottom: 10px;
}


@media screen and (min-width: 768px) {
	table.formTable th{
		width:25%;
		line-height: 44px;
		font-size:16px;
	}
	table.formTable td,.contact .wpcf7 select,.contact .wpcf7 .wpcf7-list-item-label{
		font-size:16px;
	}
	.contact .formTable td.answer{
		font-size:16px;
	}
	table.formTable td.hissu,table.formTable td.nini{
		width:15%;
		text-align: center;
	}
	table.formTable td.hissu div,table.formTable td.nini div{
		height: 44px;
		line-height: 44px;
	}
	table.formTable .radio label{
		font-size:14px;
		line-height: 20px;
		margin-bottom: 0;
		margin-right: 20px;
	}
	.wpcf7 select{
		width:70px;
	}
}
@media screen and (max-width: 768px) {
	table.formTable,table.formTable tbody,
	table.formTable tr,table.formTable th,
	table.formTable td{
		display: block;
	}
	table.formTable tr{
		margin-bottom: 15px;
	}
	table.formTable th{
		border: none !important;
		padding-bottom: 0px;
		margin-bottom: 0;
		width:100% !important;
		font-size:14px;
	}
	table.formTable td,.contact .formTable td.answer{
		padding-top: 0px;
		font-size:14px;
	}
	.contact .wpcf7 input,.contact .wpcf7 select,.contact .wpcf7 .wpcf7-list-item-label{
		font-size:14px;
	}
	table.formTable td.hissu div,table.formTable td.nini div{
		padding:5px 10px;
		display: inline;
	}
	table.formTable .radio label{
		font-size:14px;
		line-height: 20px;
		margin-bottom: 0;
		margin-right: 20px;
		display: block;
	}
	.wpcf7 select{
		width:60px;
	}
}

table.formTable .address{
	margin-bottom:10px;
}
table.formTable input[type=text].hope{
	width:200px !important;
}
table.formTable span.wpcf7-list-item{
	margin-left:0;
}
.checkbox-naiyou span.wpcf7-list-item{
	display:block;
}

/*==============================
コラム事業者テーブル
==============================*/
.margin-top-g {
    margin-bottom: 2em;
}

.column-app-table {
    width: 98% !important;
    margin: 0 !important;
    font-size: 15px !important;
    display: table !important;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.column-app-table,
.column-app-table th,
.column-app-table td {
    border: 1px solid black !important;
    border-collapse: collapse !important;
    padding: .5em .75em !important;
}

.column-app-table th {
    background-color: #f5f5f5 !important;
    font-weight: bold !important;
}

.column-app-table a {
    color: #093bc9 !important;
    text-decoration: underline !important;
}

.com-name-col {
    width: 35% !important;
}

.scrollable-table {
    display: block !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
}

.scrollable-upper-subs {
    display: none !important;
}

@media (max-width: 768px) {
    .scrollable-upper-subs {
        display: block !important;
        text-align: right !important;
        font-size: 12px !important;
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }
}

/*==============================
入金テーブル
==============================*/

.payment-table {
    width: 98% !important;
    font-size: 15px !important;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    margin-bottom: 2em !important;
    display: table !important;
}

.payment-table,
.payment-table th,
.payment-table td {
    border: 1px solid black !important;
    border-collapse: collapse !important;
    padding: .5em .75em !important;
    line-height: 1.5em !important;
}

.payment-table th {
    background-color: #f5f5f5 !important;
    font-weight: bold !important;
    white-space: nowrap !important;
}

.payment-table td {
    white-space: normal !important;
}

/*==============================
ボックス
==============================*/

.box01-container {
    /* max-width: 800px; */
    width: 98% !important;
    border: 1px solid #000 !important;
    /* padding: 20px; */
    /* margin: 20px; */
    margin-top: 35px !important;
    margin-bottom: 35px !important;
    font-family: sans-serif !important;
    position: relative !important;
}

.box01-title {
    background: #000 !important;
    color: #fff !important;
    padding: 5px 10px !important;
    display: inline-block !important;
    font-size: 15px !important;
    position: absolute !important;
    top: -15px !important;
    left: 20px !important;
}

.box01-checklist {
    padding: 20px !important;
    padding-bottom: 5px !important;
    margin-top: 20px !important;
    margin-bottom: 10px !important;
    font-size: 15px;
    /* letter-spacing: 0.5em !important;
    line-height: 1.5em !important; */
}

.box01-checklist li {
    margin-bottom: 20px;
}

 /* 固定ボタンコンテナ */
        .fixed-buttons {
            display: none;
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            background: white;
            box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
            z-index: 1000;
        }

        .header-image {
            padding: 10px 10px;
            background: white;
            text-align: center;
        }

        .header-image img {
            max-width: 90%;
            height: auto;
        }

        .buttons-container {
            display: flex;
            gap: 0;
            margin-bottom:10px;
        }

        .phone-button {
            flex: 1;
            border: none;
            padding: 0 10px;
            cursor: pointer;
            transition: opacity 0.3s;
        }

        .phone-button:active {
            opacity: 0.8;
        }

        .phone-button img {
            width: 100%;
            height: auto;
            display: block;
        }
        
        .mail-button {
            flex: 1;
            border: none;
            padding: 0 10px;
            cursor: pointer;
            transition: opacity 0.3s;
        }

        .mail-button:active {
            opacity: 0.8;
        }

        .mail-button img {
            width: 100%;
            height: auto;
            display: block;
        }

        /* スマホサイズでのみ表示 */
        @media (max-width: 768px) {
            .fixed-buttons {
                display: block;
            }
        }

        /* タブレット以上では非表示 */
        @media (min-width: 769px) {
            .fixed-buttons {
                display: none;
            }
        }

/* =========================================================
   【矢印2つ表示修正版】ブログ記事本文・テーブル内のリンク装飾
========================================================= */

/* 段落(p)、リスト(li)、セル(td/th)の中にあるテキストリンク */
body .post-content p a,
body .post-content li a,
body .post-content td a,
body .post-content th a {
  color: #005bb5 !important; /* 青色 */
  text-decoration: none !important; 
  border-bottom: 2px solid #005bb5 !important; /* 青い下線 */
  font-weight: bold !important; 
  
  /* --- スマホで「押せる」と直感的にわかるボタン風の装飾 --- */
  background-color: #f0f8ff !important; /* 薄い水色の背景をつけてハイライト */
  padding: 4px 24px 4px 8px !important; /* 右側に矢印を入れるスペース（24px）を確保 */
  border-radius: 4px !important; /* 角を少し丸める */
  
  /* --- ★矢印が2つ出る問題を修正★ --- */
  -webkit-box-decoration-break: slice !important; /* cloneからsliceに変更 */
  box-decoration-break: slice !important; /* cloneからsliceに変更 */
  
  /* 矢印（SVGアイコン）を右側に表示 */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23005bb5'%3E%3Cpath d='M9.707 18.707l6-6c.391-.391.391-1.023 0-1.414l-6-6c-.391-.391-1.023-.391-1.414 0s-.391 1.023 0 1.414L13.586 12l-5.293 5.293c-.391.391-.391 1.023 0 1.414.391.391 1.023.391 1.414 0z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 4px center !important;
  background-size: 16px !important;
  
  transition: all 0.3s ease !important; 
}

/* マウスホバー時（スマホでタップした瞬間）のアクション */
body .post-content p a:hover,
body .post-content li a:hover,
body .post-content td a:hover,
body .post-content th a:hover {
  color: #e3342f !important; /* 赤色に変化 */
  border-bottom-color: #e3342f !important; /* 下線も赤色に変化 */
  background-color: #fdf2f2 !important; /* 薄い赤の背景 */
  
  /* ホバー時は右側の矢印も赤色に変更 */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e3342f'%3E%3Cpath d='M9.707 18.707l6-6c.391-.391.391-1.023 0-1.414l-6-6c-.391-.391-1.023-.391-1.414 0s-.391 1.023 0 1.414L13.586 12l-5.293 5.293c-.391.391-.391 1.023 0 1.414.391.391 1.023.391 1.414 0z'/%3E%3C/svg%3E") !important;
}

/* 画像リンクの場合は下線や矢印などの装飾を完全に無効化 */
body .post-content a img {
  border-bottom: none !important;
}
body .post-content a:has(img) {
  border-bottom: none !important;
  background-color: transparent !important;
  background-image: none !important;
  padding: 0 !important;
}

/* テーブル内のリンク特有の微調整 */
body .post-content td a {
  word-break: break-all !important; 
  display: inline-block !important; /* セル内でタップ領域を安定させる */
  margin: 4px 0 !important;
}