@charset "utf-8";

/* =============================================
	guidance index.aspx
  建築資料研究社のページよりコピー
============================================= */
/*-------------
  共通スタイルシート 調整
--------------*/
.content {
  font-size: 1.6em; /* 基本のフォントサイズ1.6em（16px） */
  line-height: 1.8;
  color: #111;
}
.content p,
.content ul,
.content ol,
.content li,
.content dl,
.content table,
.content blockquote,
.content address,
.content pre,
.content iframe,
.content form,
.content figure {
  font-size: 16px;
  line-height: 1.8;
}
.content h1,.content h2,.content h3,.content h4,.content h5,.content h6,.content th{
  color: #111;
}
.sp_only {
	display: none;
}

.tablet_only {
	display: none;
}
.lead-box {
	padding: 0 2.4rem;
}

.lead-box__inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}
.nowrap,
.nowrap_pc,
.nowrap_pc_tablet {
	white-space: nowrap;
}
.content{
  overflow: hidden;
}
.stus-main{
  padding-bottom: 0;
}

/*-------------

content

--------------*/

.content {
  padding-bottom: 6.4rem;
  background: url(../img/visual-box_bg01.png) repeat center top 0rem, #f5efd5;
  background-size: 120rem auto;
}

.tablet_sp_only {
  display: none;
}

/*-------------

visual-box

--------------*/

.visual-box {
	height: auto;
}

.visual-box__switch-img {
	display: block;
	text-align: center;
	padding: 3.2rem 2.4rem;
}

.visual-box__switch-img img {
	width: 100%;
	max-width: 58rem;
	height: auto;
}


/*-------------

lead-box

--------------*/

.lead-box__wraper {
	position: relative;
	background: url(../img/lead-box_shape_bg01.png) no-repeat right -17rem top -15rem,
    url(../img/lead-box_shape_bg02.png) no-repeat left -8rem bottom -3.2rem;
	background-color: #fff;
	background-size: max(120rem, 800px) auto, max(120rem, 800px) auto;
}

.lead-box__wrap {
	background-color: rgba(255, 255, 255, 0.56);
}

.lead-box__wraper:before {
	position: absolute;
	/* content: ""; */
	top: 10rem;
	left: -16rem;
	right: -16rem;
	height: calc(100% + 12rem);
	background: url(../img/lead-box_bg01.png) repeat top center;
	transform: rotate(-6deg);
	z-index: 0;
}

.lead-box__inner {
	padding: 8rem 0;
}

.lead-box__title {
	font-weight: bold;
	padding-top: 8.8rem;
	text-align: center;
}

.lead-box__title small.nowrap {
    font-size: max(3.0rem, 26px);
}

.lead-box__title::before {
	position: absolute;
	/* content: ""; */
	top: 0;
	left: 0;
	background-image: url(../img/lead-box_title_im01.svg);
	background-repeat: no-repeat;
	background-size: auto 7.2rem;
	background-position: top center;
	width: 100%;
	height: 7.2rem;
}

.lead-box__txt {
	margin-top: 1.6rem;
	text-align: center;
}

.lead-box__title__large-txt {
	position: relative;
	margin-top: 2.4rem;
	font-size: max(5.6rem, 40px);
	font-weight: bold;
	padding-left: 6.6rem;
}

.lead-box__large-txt {
	font-size: max(2.0rem, 18px);
	font-weight: bold;
	text-align: center;
	margin-top: 2.4rem;
}

.lead-box__large-txt + .lead-box__txt {
	margin-top: 2.4rem;
}

.lead-box__large-txt__line {
	font-weight: bold;
	background: linear-gradient(transparent 72%, #fee550 0%);
}

.lead-box__title + .lead-box__txt {
	margin-top: 2.4rem;
}

.lead-box__title__subttl {
    font-size: max(2.4rem, 20px);
    text-shadow: 0.2rem 0.2rem 0 rgba(255, 255, 255, 0.9), -0.2rem -0.2rem 0 rgba(255, 255, 255, 0.9),
                    -0.2rem 0.2rem 0 rgba(255, 255, 255, 0.9), 0.2rem -0.2rem 0 rgba(255, 255, 255, 0.9),
                    0px 0.2rem 0 rgba(255, 255, 255, 0.9), 0 -0.2rem 0 rgba(255, 255, 255, 0.9),
                    -0.2rem 0 0 rgba(255, 255, 255, 0.9), 0.2rem 0 0 rgba(255, 255, 255, 0.9),
                    0 0 2rem rgba(255, 255, 255, 0.8), 0 0 2rem rgba(255, 255, 255, 0.8);

}

.lead-box__title__mainttl {
    background-color: #fee550;
    padding: 1.2rem 0.8rem;
    margin-top: 1.4rem;
    display: inline-block;
    font-size: max(3.2rem, 24px);
}


.lead-box__img {
	text-align: center;
	margin-top: 1.6rem;
}

.lead-box__img img {
	width: 100%;
	max-width: 64rem;
	height: auto;
}

.lead-box__unit {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	margin-top: 4rem;
}

.lead-box__unit__img-cont {
	max-width: 30rem;
}

.lead-box__unit__img-cont img {
	width: 100%;
	height: auto;
}

/*-------------

rule-box

--------------*/

.overview-section .section {
	margin-top: 0;
}

.rule-box__title__subttl {
	font-size: max(2.4rem, 20px);
}

.rule-box__title {
	font-weight: bold;
	padding-top: 8.8rem;
	text-align: center;
	position: relative;
}

.rule-box__title::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -2.4rem;
	left: 0;
	right: 0;
	margin: auto;
	width: 3.2rem;
	height: 0.4rem;
	background-color: #00a8a8;
}

.rule-box__title__mainttl {
    margin-top: 0.8rem;
    display: inline-block;
    font-size: max(3.2rem, 24px);
    position: relative;
}

.rule-box__title__mainttl::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
	width: calc(100% + 12rem);
	height: auto;
	background: url(../img/rule-title_ic01.svg) no-repeat center left;
	background-size: max(2.0rem, 16px) auto;
	left: -6rem;
}

.rule-box__title__mainttl::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
	width: calc(100% + 12rem);
	height: auto;
	background: url(../img/rule-title_ic01.svg) no-repeat center right;
	background-size: max(2.0rem, 16px) auto;
	right: -6rem;
}

.rule-box__unit {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-top: 7.2rem;
}

.rule-box__unit__img {
    max-width: 40rem;
}

.rule-box__unit__img img {
    width: 100%;
    height: auto;
}

.rule-box__unit__list {
    margin-left: 6.4rem;
}

.rule-box__unit__list__item:not(:first-of-type) {
    margin-top: 0.8rem;
}

.rule-box__example-unit {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    margin-top: 2.4rem;
}

.rule-box__example-unit__cont {
    margin-top: 8rem;
    border: solid 3px #111;
    background-color: rgba(255, 255, 255, 1.0);
    padding: 0 3.2rem 3.2rem;
    width: calc(100%/2 - 4.0rem);
}

.rule-box {
    padding: 0 2.4rem 8.8rem;
}

.rule-box__inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.rule-box__example-unit__cont__title {
    font-size: max(5.6rem, 32px);
    text-align: center;
    font-weight: bold;
    margin-top: -1.6rem;
    background: linear-gradient(transparent 10%, #fff 0%) center center;
    background-size: 16rem 4rem;
    background-repeat: no-repeat;
    line-height: 1.3;
}

.rule-box__example-unit__cont__title small {
	font-size: max(2.0rem, 18px);
	display: block;
}

.rule-box__example-unit__cont__img {
    max-width: 40rem;
    margin: 2.4rem auto 0;
}

.rule-box__example-unit__cont__img img {
    width: 100%;
    height: auto;
}


.rule-box__example-unit__cont__txt {
    margin-top: 2.4rem;
}

/*-------------

category-box

--------------*/

.category-title {
	font-size: max(2.6rem, 22px);
	font-weight: bold;
	text-align: center;
	padding-top: 8rem;
	position: relative;
}

.category-title::after {
	content: "";
	display: block;
	position: absolute;
	bottom: -2.4rem;
	left: 0;
	right: 0;
	margin: auto;
	width: 3.2rem;
	height: 0.4rem;
	background-color: #00a8a8;
}

.category-title__large-txt {
	font-weight: bold;
	font-size: max(3.2rem, 24px);
	margin-top: 1.6rem;
	display: inline-block;
	position: relative;
}


.category-title__large-txt::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
	width: calc(100% + 12rem);
	height: auto;
	background: url(../img/rule-title_ic01.svg) no-repeat center left;
	background-size: max(2.0rem, 16px) auto;
	left: -6rem;
}

.category-title__large-txt::after {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
	width: calc(100% + 12rem);
	height: auto;
	background: url(../img/rule-title_ic01.svg) no-repeat center right;
	background-size: max(2.0rem, 16px) auto;
	right: -6rem;
}

.content-third-title:before {
	background-color: #faf6e6;
}

.tel-link {
	font-size: max(2.2rem, 20px);
}

.tel-link span:before {
	top: 0.5rem;
}

/*-------------

category-table

--------------*/

.category-table {
	width: 100%;
	margin-top: 8rem;
	border: 3px solid #111;
	background-color: #fff;
	padding: 2.4rem;
	display: block;
}

.category-table__tbody tr {
	margin-top: 2rem;
	display: block;
}

.category-table__head {
	text-align: center;
	padding: 2rem 0;
	vertical-align: middle;
	width: 16rem;
	font-size: max(2.0rem, 18px);
	background-color: #03a8a8;
	color: #fff;
}

.category-table__data {
	position: relative;
	padding: 0 0 2.4rem 4rem;
	vertical-align: middle;
}

.category-table__data:before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 0.3rem;
	height: calc(100% - 4rem);
	background-color: #eee;
}

.category-table__data__txt {
	margin-top: 1rem;
}

.category-table__logo--mynavi {
	max-width: 18rem;
	display: inline-block;
	text-indent: 0;
}

.category-table__logo--mynavi img {
	width: 100%;
	vertical-align: top;
}

/* category-table-def */
.category-table-def {
	margin-top: 1rem;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}

.category-table-def dt {
	width: 22rem;
	font-weight: bold;
	font-size: max(1.7rem, 15px);
}

.category-table-def dd {
	width: calc(100% - 22rem);
	position: relative;
	padding: 1rem 0 1rem 3.2rem;
}

.category-table-def dd:before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 0.3rem;
	height: 60%;
	background-color: #cdcdcd;
}

.category-table__number-list__item {
	list-style: decimal inside;
	text-indent: -2.2rem;
	padding-left: 2.2rem;
	margin-top: 1.6rem;
}

.category-table__number-list__item__title {
	font-weight: bold;
	display: inline-block;
	text-indent: 0;
	position: relative;
	padding-left: 2.4rem;
	font-size: max(1.8rem, 16px);
}

.category-table__number-list__item__title:before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	background-color: #cdcdcd;
}

.category-table__number-list__item__txt {
	text-indent: 0;
}

.category-table__number-list__item .number-list > li {
    margin-top: 0.2rem;
}

.category-table__number-list__item--no-number {
	list-style: none;
}

.category-table .note-list,
.category-table .disc-list,
.category-table .number-list,
.category-table  .number-circle-list {
    margin-top: 1.6rem;
}

.category-table__number-list__item__title + .note-list,
.category-table__number-list__item__title + .disc-list,
.category-table__number-list__item__title + .number-list,
.category-table__number-list__item__title + .number-circle-list,
.category-table__number-list__item__txt + .note-list,
.number-circle-list + .disc-list {
    margin-top: 0.4rem;
}

.category-table__data__logo {
	width: 100%;
	max-width: 36rem;
	height: auto;
}

.category-table__second-title {
	position: relative;
	padding-left: 2.2rem;
	font-weight: bold;
	margin-top: 2.4rem;
}

.category-table__second-title::before {
	position: absolute;
	content: "";
	top: 0.6rem;
	left: 0.2rem;
	width: 1rem;
	height: 1rem;
	background-color: #cdcdcd;
}

.category-table__second-txt {
	margin-top: 0.4rem;
	margin-left: 2.2rem;
}

.category-table__logo-unit {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.category-table__logo-unit__img-cont {
	width: 16rem;
	margin-top: 2.4rem;
}

.category-table__logo-unit__img-cont img {
	width: 100%;
	height: auto;
}

.category-table__logo-unit__txt-cont {
    width: calc(100% - 18rem);
}

/*-------------

parts

--------------*/

.category-table .page-link:before {
	border-top-color: #faf6e6;
	border-right-color: #faf6e6;
}

.red-txt {
  color: #e60012;
  font-weight: bold;
}

/*-------------

inquiry-box

--------------*/

.inquiry-box__title span {
	border-color: #faf6e6;
}

.inquiry-box__title span:before {
	border-color: #faf6e6 transparent transparent transparent;
}

.inquiry-box__txt__red-txt {
	font-weight: bold;
	color: #e60012;
	background: linear-gradient(transparent 70%, #faf6e6 0%);
}

.inquiry-box__btn a {
	color: #111;
	background-color: #faf6e6;
}

.inquiry-box__btn a:after {
	border-top-color: #111;
	border-right-color: #111;
	transition: all 0.3s;
}

.inquiry-box {
	position: fixed;
	bottom: 0;
	right: 0;
	width: 24.2rem;
	height: 22.6rem;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.5s ease-in-out;
	z-index: 50;
}

.inquiry-box.appear {
	pointer-events: auto;
	opacity: 1;
}

.inquiry-box-openbtn {
	position: absolute;
	top: 7.2rem;
	right: 22rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 5.6rem;
	height: 5.6rem;
	background-color: #222;
	border-radius: 50%;
	box-shadow: -0.4rem 0.2rem 0.8rem rgba(0, 0, 0, 0.4);
	z-index: 51;
	transition: all 0.3s;
}

.inquiry-box-openbtn.open {
	transition: all 0.3s;
	right: 0;
}

.inquiry-box-openbtn:after {
	content: "";
	width: 1.4rem;
	height: 1.4rem;
	transform: rotate(45deg);
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transition: 0.3s;
	margin: 0 0.7rem 0 0;
}

.inquiry-box-openbtn.open:after {
	transform: rotate(-135deg);
	margin: 0 0 0 0.7rem;
}

.inquiry-box__link {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	max-width: 24rem;
	transition: 0.3s;
}

.inquiry-box__link.open {
	right: -40rem;
}

.inquiry-box__link__img {
	width: 100%;
	height: auto;
}

/* shiny-btn */
.shiny-btn {
	position: relative;
	display: block;
	overflow: hidden;
}

@keyframes shiny {
	0% { left: -20%; }
	10% { left: 120%; }
	100% { left: 120%; }
}

.shiny-btn:hover::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: -2rem;
	width: 4rem;
	height: 64%;
	transform: scale(2) rotate(20deg);
	background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.5) 100%, rgba(255, 255, 255, 0) 0%);
	animation-name: shiny;
	animation-duration: 4s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
}

/*-------------

grand-unit

--------------*/

.grand-unit {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	background-color: #fff;
	border: solid 1.6rem #fed953;
	padding: 0 3.2rem 4.8rem;
	width: 100%;
	max-width: 880px;
	margin: 6.4rem auto 0;
	flex-direction: column;
}

.grand-unit__title {
	text-align: center;
	padding: 4.0rem 2.4rem 0;
}

.grand-unit__title img {
	height: auto;
	width: 100%;
	max-width: 34rem;
}

.grand-unit__catch-cont__catch {
	position: relative;
	padding: 0 2.4rem;
	text-align: center;
	color: #666;
	font-size: max(1.5rem, 14px);
	margin-right: 16rem;
}

.grand-unit__catch-cont__catch::before {
	position: absolute;
	left: 0;
	bottom: 0;
	content: "";
	width: 2px;
	height: 88%;
	background: #fed953;
	border-radius: 5px;
	transform: rotate(-35deg);
	/* top: 0; */
	/* margin: auto; */
}

.grand-unit__catch-cont__catch::after {
	position: absolute;
	content: "";
	right: 0;
	/* top: 0; */
	width: 2px;
	height: 88%;
	background-color: #fed953;
	border-radius: 5px;
	transform: rotate(35deg);
	bottom: 0;
	/* margin: auto; */
}

.grand-unit__prize {
	font-size: max(2.6rem, 22px);
	font-weight: bold;
	margin-top: 2.4rem;
	border-bottom: dashed 2px #fed953;
	padding-bottom: 1.2rem;
	text-align: center;
}

.grand-unit__catch-cont {
    display: flex;
    justify-content: center;
    align-items: center;
}

.grand-unit__catch-cont__mark {
    width: 14rem;
    height: auto;
    margin: -1.2rem 3.2rem 1.2rem 0;
}

.grand-unit__book-img,
.special-unit__book-img {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.grand-unit__book-img img,
.special-unit__book-img img {
	box-shadow: 0 0.6rem 1.2rem -0.2rem rgba(50, 50, 93, 0.25), 0 0.3rem 0.7rem -0.3rem rgba(0, 0, 0, 0.3); /* #22 */
	width: 100%;
}

.grand-unit__book-img__lg,
.special-unit__book-img__lg {
	max-width: 36rem;
}

.grand-unit__book-img__nikken-lg,
.special-unit__book-img__nikken-lg {
	max-width: 36rem;
	margin-top: 2.4rem;
}

.grand-unit__work-title {
	font-size: max(2.8rem, 22px);
	font-weight: bold;
	text-align: center;
	margin-top: 2.4rem;
}

.grand-unit__work-name {
	font-size: max(2.4rem, 20px);
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

.grand-unit__work-name__scool {
	font-size: max(1.8rem, 16px);
	display: block;
}

.grand-unit__concept,
.grand-unit__comment {
	color: #666;
	font-size: max(1.6rem, 16px);
	font-weight: bold;
	position: relative;
	margin-top: 2.4rem;
	padding: 0.4rem 0 0 3.0rem;
}

.grand-unit__concept::before,
.grand-unit__comment::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
}

.grand-unit__concept::before {
	background: url(../img/grand-flag_ic01.png) no-repeat bottom 2px right;
	background-size: auto 2.4rem;
	width: 2.4rem;
	height: 100%;
}

.grand-unit__comment::before {
	background: url(../img/grand-comment_ic01.png) no-repeat bottom left;
	background-size: 2.2rem auto;
	width: 2.2rem;
	height: 100%;
}

.grand-unit__txt {
	margin-top: 1.2rem;
}

/*-------------

special-unit

--------------*/

.special-unit {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	background-color: #fff;
	border: solid 1.6rem #d1d1d1;
	padding: 0 3.2rem 4.8rem;
	width: 100%;
	max-width: 880px;
	margin: 6.4rem auto 0;
	flex-direction: column;
}

.special-unit__title {
	text-align: center;
	padding: 4.0rem 2.4rem 0;
}

.special-unit__title img {
	height: auto;
	width: 100%;
	max-width: 20rem;
}


.special-unit__catch {
	position: relative;
	padding: 0.4rem 3.2rem 0.8rem;
	text-align: center;
	line-height: 1.6;
	color: #666;
	font-size: max(1.5rem, 14px);
	margin-top: 2.4rem;
}

.special-unit__catch::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	width: 2px;
	height: 100%;
	background: #fed953;
	border-radius: 5px;
	transform: rotate(-35deg);
}

.special-unit__catch::after {
	position: absolute;
	content: "";
	right: 0;
	top: 0;
	width: 2px;
	height: 100%;
	background-color: #fed953;
	border-radius: 5px;
	transform: rotate(35deg);
}

.special-unit__prize {
	font-size: max(2.2rem, 20px);
	font-weight: bold;
	margin-top: 2.4rem;
	border-bottom: dashed 2px #d1d1d1;
	padding-bottom: 1.2rem;
	text-align: center;
}

.special-unit__book-img {
	margin-top: 3.2rem;
}

.special-unit__work-title {
	font-size: max(2.8rem, 22px);
	text-align: center;
	font-weight: bold;
	margin-top: 2.4rem;
}

.special-unit__work-name {
	font-size: max(2.4rem, 20px);
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}


.special-unit__work-name__scool {
	font-size: max(1.8rem, 16px);
	display: block;
}

.special-unit__concept,
.special-unit__comment {
	color: #666;
	font-size: max(1.6rem, 16px);
	font-weight: bold;
	position: relative;
	margin-top: 2.4rem;
	padding: 0.6rem 0 0 3.0rem;
}

.special-unit__concept::before,
.special-unit__comment::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
}

.special-unit__concept::before {
	background: url(../img/special-flag_ic01.png) no-repeat bottom right;
	background-size: auto 2.4rem;
	width: 2.4rem;
	height: 100%;
}

.special-unit__comment::before {
	background: url(../img/special-comment_ic01.png) no-repeat bottom left;
	background-size: 2.2rem auto;
	width: 2.2rem;
	height: 100%;
}

.special-unit__txt {
	margin-top: 1.2rem;
}

.special-unit__concept-img {
	margin-top: 3.2rem;
}

.special-unit__concept-img img {
	width: 100%;
	height: auto;
}

/*-------------

category-box

--------------*/

.category-title__catch {
	position: relative;
	padding: 0.4rem 3.2rem 0.8rem;
}

.category-title__catch::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	width: 2px;
	height: 80%;
	background: #111;
	border-radius: 5px;
	transform: rotate(-35deg);
}

.category-title__catch::after {
	position: absolute;
	content: "";
	right: 0;
	top: 0;
	width: 2px;
	height: 80%;
	background-color: #111;
	border-radius: 5px;
	transform: rotate(35deg);
}

.content-third-title:before {
	background-color: #faf6e6;
}

.tel-link {
	font-size: max(2.2rem, 20px);
}

.tel-link span:before {
	top: 0.5rem;
}

/*-------------

review-unit

--------------*/

.review-unit__title {
	font-size: max(2.6rem, 22px);
	font-weight: bold;
	text-align: center;
	padding-top: 4.8rem;
}

.review-unit__txt {
	margin-top: 1rem;
}

.review-unit__title + .review-unit__txt {
	margin-top: 2.4rem;
}

.review-unit {
	background-color: #fff;
	padding: 0 4.8rem 5.6rem;
	width: 100%;
	max-width: 880px;
	margin: 6.4rem auto 0;
}

.review-unit__name {
	margin-top: 3.2rem;
	text-align: right;
}






/*============

media queries

=============*/

/*-------------

タブレット・スマホ

--------------*/

@media (max-width: 959px) {
	.grand-unit__concept::before,
	.special-unit__concept::before {
			background-position: bottom 4px right;
	}

	.grand-unit__comment::before,
	.special-unit__comment::before{
			background-position: bottom 3px left;
	}

	.tablet_sp_only {
		display: inline-block;
	}

	/* lead-box */
	.lead-box__wrap {
		background-size: 960px auto, 100% auto;
	}

	/* category-table */
	.category-table__col--category {
	}

	.category-table__data {
		padding: 0.8rem 0 0.8rem 2.4rem;
	}

	.lead-box__unit {
		flex-direction: column;
		align-items: flex-start;
	}

	.lead-box__unit__img-cont {
		margin: 2.4rem auto 0;
	}

	.rule-box__unit {
		flex-direction: column;
	}

	.rule-box__unit__img {
		margin: auto;
	}

	.rule-box__unit__list {
		margin: 2.4rem 0 0;
	}

	.rule-box__example-unit {
		flex-direction: column;
		align-items: flex-start;
	}

	.rule-box__example-unit__cont {
		width: 100%;
	}

	.category-table-def {
		flex-direction: column;
	}

	.category-table-def dt {
		width: 100%;
	}

	.category-table-def dd {
		width: 100%;
		padding-left: 1.6rem;
	}

	.category-table__logo-unit {
	    flex-direction: column;
	    align-items: center;
	}

	.category-table__logo-unit__txt-cont {
	    width: 100%;
	}

	.category-table__logo-unit__img-cont {
		margin-top: 0.8rem;
	}

	.overview-section {
		background-size: 100% auto;
	}

	.grand-unit__catch-cont__catch {
			margin-right: 0;
	}

	.grand-unit__catch-cont {
			margin: 0 -4.4rem 0  -6.4rem;
	}
}


/*-------------

スマホ

--------------*/

@media (max-width: 519px) {

  /* cmn */
	/* only */
	.pc_tablet_only {
		display: none;
	}

	.tablet_only {
		display: none;
	}

	.sp_only {
		display: block;
	}


	.visual-box__switch-img img {
		max-width: 400px;
	}

	.grand-unit__title__img img {
		max-width: none;
	}

	.grand-unit__title__img img {
		max-width: none;
	}

	.grand-unit__catch-cont__catch {
		padding: 0 1.6rem;
	}

	.grand-unit__catch-cont__catch::before {
		transform: rotate(-20deg);
	}

	.grand-unit__catch-cont__catch::after {
		transform: rotate(20deg);
	}

	.review-unit__name {
		text-align: left;
	}

	.grand-unit__catch-cont__mark {
		margin: -1.6rem -1.2rem 1.2rem 0;
		z-index: 1;
	}

	.category-box:first-of-type {
		/* margin: 0 -2.4rem; */
	}

.grand-unit__work-title,
.special-unit__work-title {
	margin: 2.4rem -3.2rem 0;
}

	.review-unit {
		border-left: solid 1.6rem #faf6e6;
		border-right: solid 1.6rem #faf6e6;
		padding: 0 3.2rem 5.6rem;
	}

	/* lead-box__title */
	.lead-box__title__large-txt {
		padding-left: 0;
		padding-top: 8.4rem;
	}

	.lead-box__title__large-txt:before {
		left: 0;
		right: 0;
	}

	.lead-box__txt,
	.lead-box__large-txt {
		text-align: left;
	}

	/* category-table */
	.category-table-def dt {
		width: 100%;
		margin-top: 2rem;
		text-align: left;
	}

	.category-table-def dd {
		width: 100%;
		padding: 0 0 0 2rem;
	}

	.category-table-def dd:before {
		width: 0;
	}

	.category-table__tbody tr {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: column;
	}
	
	.category-table__head {
		width: 100%;
		padding: 0.4rem;
	}

	.tel-link span:before {
		top: 1.2rem;
	}

	.category-table__second-title::before {
		top: 1rem;
	}

	/* lead-box */
	.content-txt--large {
		text-align: left;
	}

	.category-table__data {
		padding: 0.8rem 0.8rem;
	}
	
	.category-title__catch {
		padding: 0.4rem 2.4rem 0.8rem;
	}

	.category-title__catch::before {
		transform: rotate(-20deg);
	}

	.category-title__catch::after {
		transform: rotate(20deg);
	}

}
