@charset "utf-8";

/*! common
================================================== */
html {
	overflow: auto
}

body {
	color: #414148;
	font-family: "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	min-width: 1000px;
	overflow: hidden;
}

/*! clearfix */
.cf:after {
	content: " ";
	display: block;
	clear: both;
}

/*! header
================================================== */
#gHeader {
	width: 1000px;
	height: 117px;
	margin: 0 auto;
}

#home #gHeader {
	height: 130px;
}

#gHeader .catch {
	padding: 10px 0 0 4px;
	font-size: 12px;
}

#gHeader .logo {
	float: left;
	padding: 9px 0 0 0;
}

#gHeader .rightArea {
	float: right;
	width: 582px;
	padding: 14px 0 0 0;
}

#gHeader .rightArea .catchBlock {
	float: left;
}

#gHeader .rightArea .catchBlock li {
	float: left;
	padding: 0 5px 0 0;
}

#gHeader .rightArea .telBlock {
	float: right;
	width: 251px;
}

#gHeader .rightArea .telBlock ul {
	margin: 0 0 7px;
	line-height: 0;
}

#gHeader .rightArea .telBlock ul li {
	float: left;
}

#gHeader .rightArea .telBlock ul li.last {
	float: right;
}

#gHeader .rightArea .telBlock ul li img {}

/*! gNav
================================================== */
#gNav {
	position: relative;
	z-index: 9999;
	background: url(../img/common/bg_gnav01.png) 0 5px repeat-x;
	height: 75px;
	margin: 0 0 20px 0;
}

#home #gNav {
	margin: 0 0 30px 0;
}

#gNav ul {
	position: absolute;
	left: 50.5%;
	-webkit-transform: translate(-50%, -0);
	-moz-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, -0);
	-o-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	width: 1012px;
}

#gNav ul li {
	float: left;
}

#gNav ul li a {
	display: block;
	height: 75px;
	background: url(../img/common/gnavi01.png) no-repeat;
}

#gNav ul li.gNav01 a {
	width: 143px;
	background-position: 0 0;
}

#reason #gNav ul li.gNav01 a,
#gNav ul li.gNav01 a:hover {
	background-position: 0 -75px;
}

#gNav ul li.gNav02 a {
	width: 140px;
	background-position: -143px 0;
}

#seavice #gNav ul li.gNav02 a,
#gNav ul li.gNav02 a:hover {
	background-position: -143px -75px;
}

#gNav ul li.gNav03 a {
	width: 155px;
	background-position: -283px 0;
}

#flow #gNav ul li.gNav03 a,
#gNav ul li.gNav03 a:hover {
	background-position: -283px -75px;
}

#gNav ul li.gNav04 a {
	width: 139px;
	background-position: -438px 0;
}

#price #gNav ul li.gNav04 a,
#gNav ul li.gNav04 a:hover {
	background-position: -438px -75px;
}

#gNav ul li.gNav05 a {
	width: 153px;
	background-position: -577px 0;
}

#faq #gNav ul li.gNav05 a,
#gNav ul li.gNav05 a:hover {
	background-position: -577px -75px;
}

#gNav ul li.gNav06 a {
	width: 119px;
	background-position: -730px 0;
}

#voice #gNav ul li.gNav06 a,
#gNav ul li.gNav06 a:hover {
	background-position: -730px -75px;
}

#gNav ul li.gNav07 a {
	width: 157px;
	background-position: -849px 0;
}

#contact #gNav ul li.gNav07 a,
#gNav ul li.gNav07 a:hover {
	background-position: -849px -75px;
}

#gNav ul li a span {
	display: none;
}


#gNav ul li.gNav02 {
	position: relative;
}

#gNav .listPullDown {
	overflow: hidden;
	width: 141px;
	padding: 0 10px;
	top: 75px;
	left: 0;
	transform: none;
	background: rgba(1, 64, 189, .9);
	box-sizing: border-box;
}

#gNav .listPullDown .item {
	float: none;
}

#gNav .listPullDown .item a {
	width: auto;
	height: auto;
	background: none;
	color: #fff;
}

#gNav .listPullDown .item a:hover {
	opacity: .7;
}

/*! breadcrumb
================================================== */
#breadcrumb {
	width: 1000px;
	margin: 0 auto 14px auto;
}

#breadcrumb li {
	display: inline;
}

#breadcrumb li::after {
	content: ">";
}

#breadcrumb li:last-child::after {
	content: none;
}

#breadcrumb a {
	display: inline;
	color: #0129a5;
}

#breadcrumb a:hover {
	text-decoration: none;
}

/*! contents
================================================== */
#contents {
	width: 1000px;
	margin: 0 auto 50px auto;
}

/*! modArea
================================================== */
#mainWrap {
	float: left;
	width: 740px;
}

/*! aside
================================================== */
#sidebar {
	float: right;
	width: 230px;
	padding: 0;
	position: relative;
	top: -31px;
}

#home #sidebar {
	position: relative;
	top: 10px;
}

/*! contactBox
---------------------------------------- */
#sidebar .contactBox {
	background: #fd3327;
	border-radius: 10px;
	margin: 0 0 20px 0;
}

#sidebar .contactBox .photo {
	padding: 10px 0 14px 13px;
}

#sidebar .contactBox .txt {
	background: #bc0d02;
	text-align: center;
	padding: 0 0 8px 0;
	margin: 0 0 14px 0;
}

#sidebar .contactBox .tel {
	padding: 0 0 12px 15px;
}

#sidebar .contactBox .ex {
	padding: 0 0 13px 15px;
}

#sidebar .contactBox .bt {
	padding: 0 0 15px 15px;
}

#sidebar .contactBox .btContact02 {
	display: inline-block;
	background: url(../img/common/sidebar/btn_contactbox01.png) 0 0 no-repeat;
	width: 200px;
	height: 60px;
}

#sidebar .contactBox .btContact02:hover {
	background-position: 0 -60px;
}

#sidebar .contactBox .btContact02 span {
	display: none;
}

/*! mediaBox
---------------------------------------- */
#sidebar .mediaBox {
	background: #5f6273;
	border-radius: 5px;
	padding: 2px 0 8px 8px;
	margin: 0 0 20px 0;
}

#sidebar .mediaBox h2 {
	margin: 4px 0 5px 5px;
}

/*! serviceBox
---------------------------------------- */
#sidebar .serviceBox {
	border: solid 3px #d8d7d7;
	border-radius: 5px;
	margin: 0 0 20px 0;
}

#sidebar .serviceBox h2 {
	background: #eee;
	text-align: center;
	padding: 9px 0 9px 0;
}

#sidebar .serviceBox h2 img {
	position: relative;
	left: -6px;
}

#sidebar .serviceBox ul {
	padding: 0 10px;
	margin: 1px 0 10px 0;
}

#sidebar .serviceBox ul li {
	border-bottom: solid 1px #d8d7d7;
}

#sidebar .serviceBox ul li a {
	display: block;
	padding: 18px 1px 0 26px;
	background: url(../img/common/ico_link01.png) 7px 22px no-repeat;
	color: #333;
	text-decoration: none;
	font-weight: bold;
	height: 36px;
}

#sidebar .serviceBox ul li a:hover {
	text-decoration: underline;
	;
}

#sidebar .serviceBox dl {
	font-size: 12px;
	padding: 9px 5px 14px 13px;
	line-height: 1.7;
}

#sidebar .serviceBox dl dt {
	margin-bottom: 2px;
	color: #012b7f;
	font-weight: bold;
}

#sidebar .serviceBox dl dd a {
	color: #333;
}

#sidebar .serviceBox .bt {
	background: url(../img/common/bg_servicebox01.png) 0 0 repeat;
	text-align: center;
	padding: 17px 0 13px 0;
}

#sidebar .serviceBox .bt .btService02 {
	display: inline-block;
	background: url(../img/common/sidebar/btn_servicebox01.png) 0 0 no-repeat;
	width: 188px;
	height: 30px;
}

#sidebar .serviceBox .bt .btService02:hover {
	background-position: 0 -30px;
}

#sidebar .serviceBox .bt .btService02 span {
	display: none;
}

/*! sNav
---------------------------------------- */
.sNav {
	border-top: 1px solid #d8d7d7;
	border-bottom: 2px solid #f2f2f2;
	margin: 0 0 18px;
}

.sNav li {
	border: 1px solid #d8d7d7;
	border-width: 0 1px 1px;
}

.sNav li a {
	display: block;
	background: url(../img/common/bg_snavi01.png) right 0 no-repeat;
	height: 50px;
	padding: 20px 0 0 20px;
}

.sNav li a:hover {
	background-position: right -70px;
}

/*! troubleBox
---------------------------------------- */
#sidebar .troubleBox {
	background: #fd3327;
	border-radius: 10px;
	padding: 0 0 15px 0;
	margin: 0 0 20px 0;
}

#sidebar .troubleBox .photo {
	padding: 15px 0 15px 13px;
}

#sidebar .troubleBox .photo .title {
	margin: 0 0 11px 33px;
}

#sidebar .troubleBox .txt {
	background: #bc0d02;
	text-align: center;
	padding: 0 0 10px 0;
	margin: 0 0 11px 0;
}

#sidebar .troubleBox .tel {
	padding: 0 0 9px 14px;
}

#sidebar .troubleBox .ex {
	margin: 0 15px;
	padding: 10px 0 10px 13px;
	background: #fff;
	border-radius: 5px;
}

#sidebar .troubleBox .ast {
	margin: 0 15px;
	padding-top: 7px;
}

/*! catchBanner
---------------------------------------- */
.catchBanner {
	background: url(../img/common/sidebar/img_border01.png) top center no-repeat;
	padding: 20px 0 10px 0;
}

.catchBanner li {
	padding: 0 0 10px 0;
}

/*! cardBanner
---------------------------------------- */

.cardBanner {
	background: url(../img/common/border_side01.png) top center no-repeat;
	padding: 20px 0 0 0;
}

/*! contactArea
================================================== */

.contactArea {
	background: url(../img/home/bg_contact_area01.png) center 30px no-repeat;
	background-size: cover;
	min-width: 1000px;
	height: 545px;
}

.contactArea .inner {
	width: 1000px;
	margin: 0 auto;
}

.contactArea .outer {
	width: 1000px;
	margin: 0 auto;
	text-align: right;
}

.contactArea .inner h2 img {
	display: block;
}

.contactArea .bgBlock {
	background: url(../img/home/bg_contact_area02.png) 0 0 repeat-x;
	position: relative;
	width: 727px;
	height: 339px;
	padding: 30px 0 0 273px;
}

.contactArea .bgBlock p.catch {
	margin: 0 0 98px 0;
}

.contactArea .bgBlock p.tel {
	position: relative;
}

.contactArea .bgBlock p.tel img.ex01 {
	position: absolute;
	top: 11px;
	left: 0;
}

.contactArea .bgBlock p.tel img.ex02 {
	position: absolute;
	top: 42px;
	left: 0;
}

.contactArea .bgBlock p.tel img.tel {
	position: absolute;
	top: 0;
	left: 144px;
}

.contactArea .bgBlock ul.ex {
	position: absolute;
	top: 265px;
	left: 267px;
}

.contactArea .bgBlock ul.ex li {
	float: left;
	margin: 0 -5px 0 0;
}

.contactArea .bgBlock ul.ex li img {
	display: block;
}

.contactArea .bgBlock div.btBox {
	position: absolute;
	top: 270px;
	right: 40px;
}

.contactArea .btContact {
	display: inline-block;
	background: url(../img/home/btn_contact_area01.png) 0 0 no-repeat;
	width: 367px;
	height: 75px;
}

.contactArea .btContact:hover {
	background-position: 0 -75px;
}

.contactArea .btContact span {
	display: none;
}

.pagetop {
	width: 1000px;
	margin: 0 auto 34px auto;
	text-align: right;
}

.pagetop a {
	display: inline-block;
	background: url(../img/common/pagetop01.png) 0 0 no-repeat;
	width: 130px;
	height: 33px;
}

.pagetop a:hover {
	background-position: 0 -33px;
}

.pagetop a span {
	display: none;
}

/*! fNav
================================================== */

#fNav {
	width: 1000px;
	margin: 0 auto;
}

/*! logoArea
---------------------------------------- */
#fNav .logoArea {
	width: 325px;
	float: left;
}

#fNav .logoArea p.logo {
	margin: 0 0 24px;
}

#fNav .logoArea ul {
	padding: 5px;
	background: #f7f7f7;
	display: inline-block;
}

#fNav .logoArea ul li {
	float: left;
}

#fNav .logoArea ul li.last {
	padding: 4px 0 0 10px;
}

/*! fNav nav
---------------------------------------- */
#fNav {
	padding: 0 0 30px 0;
}

#fNav nav {
	float: right;
	width: 600px;
	padding-top: 7px;
}

#fNav nav ul {
	float: left;
	font-size: 12px;
}

#fNav nav ul.cat01 {
	width: 210px;
}

#fNav nav ul.cat02 {
	width: 227px;
}

#fNav nav ul.cat03 {
	width: 140px;
}

#fNav nav ul.cat04 {
	width: 110px;
}

#fNav nav ul li {
	background: url(../img/common/ico_link01.png) 0 3px no-repeat;
	padding: 0 0 8px 20px;
}

#fNav nav ul li.wrap {
	background: none;
}

#fNav nav ul li ul {
	position: relative;
	top: 1px;
	/*left: -20px;*/
}

#fNav nav ul li ul li {
	/*display: inline-block;*/
	background: none;
	padding: 0 0 5px;
}

#fNav nav ul.cat01 li ul li {
	display: inline-block;
}

#fNav nav ul li ul li:nth-child(2n+1) {
	padding-right: 22px;
}

#fNav nav ul li ul li:before {
	content: ">";
	margin: 0 5px 0 0;
	color: #0140bd;
}

#fNav nav ul li a {
	color: #333;
	text-decoration: none;
}

#fNav nav ul li ul li a {
	color: #0140bd;
}

#fNav nav ul li a:hover {
	text-decoration: underline;
}

/*! relation
---------------------------------------- */
.relation {
	float: right;
	width: 150px;
	padding: 10px 15px;
	overflow: hidden;
	background: #f7f7f7;
	line-height: 1.1;
}

.relationTit {
	display: inline-block;
	font-size: 13px;
}

.relationLink {
	display: inline-block;
}

.relationLink a {
	display: inline-block;
	margin-top: 5px;
	font-size: 13px;
	color: #999;
	line-height: 1.1;
}

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

/*! #ftGroup
-------------------------------------- */
#ftGroup {
	margin-bottom: 40px;
}

#ftGroup .groupIn {
	width: 1000px;
	margin: auto;
	padding: 26px 50px;
	background: #f3f6f7;
	box-sizing: border-box;
}

#ftGroup .groupIn .groupList {
	float: left;
	width: 430px;
}

#ftGroup .groupIn .groupList+.groupList {
	margin-left: 30px;
}

#ftGroup .groupIn .groupList dt {
	clear: left;
	color: #333;
	float: left;
	font-size: 1.2rem;
	font-weight: bold;
	letter-spacing: .05em;
}

#ftGroup .groupIn .groupList dd {
	font-size: 1rem;
	letter-spacing: 0.02em;
	padding-left: 120px;
}

#ftGroup .groupIn .groupList dd:not(:last-of-type) {
	margin-bottom: 15px;
}

#ftGroup .groupIn .groupList dd a {
	background: url(../img/common/footer/ico_blank.png) right center no-repeat;
	color: #99999b;
	display: inline-block;
	padding-right: 17px;
}

#ftGroup .groupIn .groupList dd a:hover {
	text-decoration: none;
}

/*! footer
================================================== */
#gFooter {
	border-top: solid 1px #d8d7d7;
	padding: 27px 0 29px;
}

#gFooter p {
	width: 1000px;
	margin: 0 auto;
	font-size: 12px;
	text-align: center;
}

/*! #ftFixed
================================================== */
#ftFixed {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 10px;
	background: rgba(249, 171, 21, .9);
	overflow: hidden;
}

#ftFixed .txt {
	float: left;
	width: 90px;
}

#ftFixed .txt {
	float: right;
	width: 200px;
}

/*! titleArea
================================================== */
.titleArea {
	margin: 0 0 24px 0;
}

#voice .titleArea {
	margin: 0 0 19px 0;
}

#company .titleArea {
	margin: 0 0 18px 0;
}

#service .titleArea,
#policy .titleArea {
	margin: 0 0 16px 0;
}

.titleArea .titMain {
	height: 58px;
	margin: 0 0 16px;
	padding: 0 0 0 44px;
	line-height: 60px;
	background: url(../img/common/bg_titMain01.png)no-repeat 0 center;
	font-size: 22px;
	font-weight: 700;
}


/*! usefulBox
---------------------------------------- */
#sidebar .usefulBox {
	margin-bottom: 20px;
}

#sidebar .usefulBox .tit {
	padding: 15px 0 10px;
	background: #0140bd;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	line-height: 1.39;
	border-top-right-radius: 6px;
	border-top-left-radius: 6px;
}

#sidebar .usefulBox .list {
	border: solid 1px #e5e5e5;
	border-top: 0;
}

#sidebar .usefulBox .list li+li {
	border-top: solid 1px #e5e5e5;
}

#sidebar .usefulBox .list a {
	display: block;
	color: inherit;
	padding: 15px 10px 15px 50px;
	background: url(../img/common/ico_useful01.png) no-repeat 13px 15px;
	font-size: 13px;
	line-height: 1.38;
}

#sidebar .usefulBox .list a:hover {
	text-decoration: none;
}

#sidebar .usefulBox .btn {
	padding: 10px 0;
	background: #e5e5e5;
	text-align: center;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
}

blockquote,
.blockquote {
	font-size: .1em;
	color: #aaa;
	text-align: center;
	margin: 0;
	padding: 1px 0;
	line-height: 1;
}

.balloon {
	width: 100%;
	margin: 1.5em 0;
	overflow: hidden;
}

.balloon .faceicon {
	float: left;
	margin-right: -90px;
	width: 80px;
	text-align: center;
}

.balloon .faceicon img,
.balloon .faceicon amp-img {
	width: 80px;
	height: 80px;
	max-width: 80px;
	max-height: 80px;
	/*border: solid 3px #d7ebfe;
	border-radius: 50%;*/
	margin: 0;
}

.balloon small {
	font-size: .5em;
	margin: 0 0 0 10px;
	float: left;
	position: relative;
	top: 55px;
}

.balloon .chatting {
	width: 100%;
}

.says {
	/*display: inline-block;*/
	display: block;
	position: relative;
	margin: 5px 0 0 105px;
	padding: 17px 13px;
	border-radius: 12px;
	background: #fff8e7;
	font-size: .8em;
}

.says:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 18px;
	left: -24px;
	border: 12px solid transparent;
	border-right: 12px solid #fff8e7;
}

.says p {
	margin: 0;
	padding: 0;
}

.ac-box {
	width: auto;
	margin: 0 auto 5px;
}

.ac-box label {
	/*max-width: 385px;
font-size: 16px;*/
	font-weight: bold;
	text-align: center;
	background: #fb8c00;
	margin: auto;
	line-height: 50px;
	position: relative;
	display: block;
	height: 50px;
	border-radius: 8px;
	cursor: pointer;
	color: #fff;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.ac-box label:hover {
	opacity: 0.75;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

.ac-box input {
	display: none;
}

.ac-box label:after {
	color: #fff;
	font-family: "Font Awesome 5 Free";
	content: "\f107";
}

.ac-box input:checked~label::after {
	color: #fff;
	font-family: "Font Awesome 5 Free";
	content: "\f106";
}

.ac-box div {
	/*height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;*/
	overflow: hidden;
	height: 0;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.ac-box input:checked~div {
	height: auto;
	/*padding: 5px;
background: #eaeaea;*/
	opacity: 1;
}

.ac-box div p {
	color: #777;
	line-height: 23px;
	font-size: 14px;
	padding: 20px;
	text-align: justify;
}

.ac-small p {
	margin-bottom: 0px;
}

/*タブ切り替え全体のスタイル*/
.tabs {
	padding-bottom: 40px;
	background-color: #fff;
	/*box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 700px;*/
	border: 1px solid #fb8c00;
	margin: 40px auto;
}

/*タブのスタイル*/
.tab_item {
	width: calc(100%/2);
	height: 50px;
	border-bottom: 3px solid #fb8c00;
	background-color: #d9d9d9;
	line-height: 50px;
	font-size: 16px;
	text-align: center;
	color: #565656;
	display: block;
	float: left;
	text-align: center;
	font-weight: bold;
	transition: all 0.2s ease;
	overflow: hidden;
}

.tabs_col3 .tab_item {
	width: calc(100%/3);
}

.tab_item:hover {
	opacity: 0.75;
	background-color: #fb8c00;
	color: #fff;
}

/*ラジオボタンを全て消す*/
.tabs input {
	display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
	display: none;
	padding: 40px 40px 0;
	clear: both;
	overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#tab1:checked~#tab1,
#tab2:checked~#tab2,
#tab3:checked~#tab3,
#tab4:checked~#tab4,
#tab5:checked~#tab5,
#tab6:checked~#tab6 {
	display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked+.tab_item {
	background-color: #fb8c00;
	color: #fff;
}

.intro-card {
	/*background: rgba(251, 140, 0, 0.02);
	border: 1px solid #fb8c00;*/
	word-wrap: break-word;
	max-width: 100%;
	border-radius: 5px;
	margin: 20px 10px 15px 10px;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, .2);
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

/*
.intro-card:hover {
	cursor: pointer;
	box-shadow: 0 10px 20px -5px rgba(0, 0, 0, .2);
	-moz-transform: translateY(-2px);
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
}
*/

/*
.intro-card:before {
	font-family: "Font Awesome 5 Free";
	position: absolute;
	padding: 2px 6px;
	content: "\f02e 詳細を見る";
	background-color: #fb8c00;
	color: #fff;
	font-size: .8em;
	z-index: 1;
}
*/

.intro-card a {
	text-decoration: none;
}

.intro-card-thumbnail {
	width: 35%;
	display: table-cell;
	vertical-align: middle;
	padding: 10px 0 10px 10px;
}

.intro-card-thumbnail img {
	max-height: 150px;
	padding: 0;
}

.intro-card-content {
	display: table-cell;
	vertical-align: middle;
}

.intro-card-title {
	font-size: 1em;
	margin: 5px 10px 5px 0px;
	font-weight: bold;
	line-height: 1.4;
}
/*
.intro-card-title:hover {
	text-decoration: underline;
}
*/
.intro-card-excerpt {
	font-size: .74em;
	color: #4c4c4c;
	margin: 0 10px 5px 0;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
	text-overflow: ellipsis;
}

.intro-card .clear {
	clear: both;
}


.blog-card {
	background: rgba(251, 140, 0, 0.02);
	border: 1px solid #fb8c00;
	word-wrap: break-word;
	max-width: 100%;
	border-radius: 5px;
	margin: 0px 10px 15px 10px;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, .2);
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.blog-card:hover {
	cursor: pointer;
	box-shadow: 0 10px 20px -5px rgba(0, 0, 0, .2);
	-moz-transform: translateY(-2px);
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
}

.blog-card:before {
	font-family: "Font Awesome 5 Free";
	position: absolute;
	padding: 2px 6px;
	content: "\f02e 詳細を見る";
	background-color: #fb8c00;
	color: #fff;
	font-size: .8em;
	z-index: 1;
}

.blog-card a {
	text-decoration: none;
}

.blog-card-thumbnail {
	width: 35%;
	display: table-cell;
	vertical-align: middle;
	padding: 10px 0 10px 10px;
}

.blog-card-thumbnail img {
	max-height: 150px;
	padding: 0;
}

.blog-card-content {
	display: table-cell;
	vertical-align: middle;
}

.blog-card-title {
	font-size: 1em;
	margin: 5px 10px 5px 0px;
	font-weight: bold;
	line-height: 1.4;
}

.blog-card-title:hover {
	text-decoration: underline;
}

.blog-card-excerpt {
	font-size: .74em;
	color: #4c4c4c;
	margin: 0 10px 5px 0;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
	text-overflow: ellipsis;
}

.blog-card .clear {
	clear: both;
}

.title-box {
	margin: 1em 0;
	padding: 1.5em 1em 1em;
	position: relative;
	border: 1px solid #fb8c00;
	background-color: #rgba(251, 140, 0, 0.02);
}

.title-box-title {
	position: absolute;
	top: -0.8em;
	left: 20px;
	font-weight: bold;
	font-size: 1.1em;
	background-color: #fb8c00;
	color: #fff;
	padding: 0 0.5em;
}

.title-box p {
	margin: 0;
	padding: 0;
}

/*----------------------------
追記: AddQuicktag の装飾
---------------------------- */
.b {
	font-weight: bold;
	margin: 0 0.15em;
}

.red {
	color: #ce000d;
}

.blue {
	color: #0087ff;
}

.green {
	color: #0ab908;
}

.pink {
	color: #ef6ae9;
}

.orange {
	color: #ff8f00;
}

.larger {
	font-size: 150%;
	font-weight: bold;
}

.largest {
	font-size: 300%;
	font-weight: bold;
}

.smaller {
	font-size: 60%;
}

.strike {
	text-decoration: line-through;
	margin: 0 0.15em;
}

.P-highlighter {
	background: linear-gradient(transparent 60%, rgb(255, 169, 233) 60%);
}

.B-highlighter {
	background: linear-gradient(transparent 60%, rgb(182, 242, 255) 60%);
}

.G-highlighter {
	background: linear-gradient(transparent 60%, rgb(159, 255, 0) 60%);
}

.O-highlighter {
	background: linear-gradient(transparent 60%, rgb(253, 185, 64) 60%);
}

.Y-highlighter {
	background: linear-gradient(transparent 60%, rgb(255, 229, 0) 60%);
}

.surrounded {
	margin: 0 0 4em;
	padding: 1em 1.2em;
	border: 2px solid #616161;
}

/*! for amp(202003~)
================================================== */
html {
	scroll-behavior: smooth;
}

.gNav02 .listPullDown {
	height: 0;
	overflow: hidden;
	transition: transform 1.5s;
	transform: translateY(-50%);
}

.gNav02:hover .listPullDown {
	height: auto;
	overflow: visible;
	transform: translateY(0);
}