@charset "UTF-8";
/* CSS Document */
/*===================================================
	画面用CSS（PC/SMP）
===================================================*/
/*////////////////////////////////////////////////////////////
	TOP
///////////////////////////////////////////////////////////*/
#top .topKvContainer .topKv {
  height: 575px;
}
#top .topKvContainer .topKv .kvBox .kv01 {
  background: url("../image/top/top_kv_01_sp.png") center no-repeat;
  background-size: cover;
}
#top .topKvContainer .topKv .kvBox .kv02 {
  background: url("../image/top/top_kv_02_sp.png") center no-repeat;
  background-size: cover;
}
#top .topKvContainer .topKv .kvBox .kv03 {
  background: url("../image/top/top_kv_03_sp.png") center no-repeat;
  background-size: cover;
}
#top .topKvContainer .topKv .kvBox .kv04 {
  background: url("../image/top/top_kv_04_sp.png") center no-repeat;
  background-size: cover;
}
#top .topKvContainer .topKv .kvBox .kv05 {
  background: url("../image/top/top_kv_05_sp.png") center no-repeat;
  background-size: cover;
}
#top .topKvContainer .topKv .kvBox .kv06 {
  background: url("../image/top/top_kv_06_sp.png") center no-repeat;
  background-size: cover;
}
#top .topKvContainer .topKv .kvTitle {
  padding: 120px 20px;
}
#top .topKvContainer .topKv .kvTitle .kvTitleMain {
  max-width: 265px;
  margin: 0 0 40px;
}
#top .topKvContainer .topKv .kvTitle .kvTitleSub {
  font-size: 20px;
  text-align: left;
}
#top #section__concept {
  padding: 60px 0 120px;
}
#top #section__concept .secTtl {
  margin: 0 0 40px;
  padding: 0 0 16px;
  font-size: 16px;
}
#top #section__concept .topMessage {
  margin: 0 0 80px;
  font-size: 20px;
}
#top #section__concept .secPanelList {
  margin: 0 0 80px;
}
#top #section__concept .secPanelList .secPanel + .secPanel {
  margin: 80px 0 0;
}
#top #section__concept .secPanelList .secPanel .txtBox {
  padding: 0 0 30px;
}
#top #section__concept .secPanelList .secPanel .txtBox .ttl {
  margin: 0 0 20px;
  font-size: 24px;
}
#top #section__concept .videoSection {
  text-align: center;
}
#top #section__concept .videoSection .ttl {
  margin: 0 0 20px;
  font-size: 18px;
}
#top #section__concept .videoSection .videoPanel .videoBox {
  padding: 0 0 60%;
}
#top #section__concept .videoSection .videoPanel + p {
  margin: 10px 0 0;
  font-size: 12px;
}
#top #section__consultation {
  padding: 100px 0;
}
#top #section__consultation .secTtl {
  margin: 0 0 40px;
}
#top #section__consultation .secTtl h2 {
  font-size: 28px;
}
#top #section__consultation .secTtl p {
  font-size: 14px;
}
#top #section__consultation .flowChartPanel {
  max-width: 700px;
  margin: 0 auto 80px;
}
#top #section__consultation .flowBoxList .flowBox {
  padding: 30px 0;
}
#top #section__consultation .flowBoxList .flowBox .inner {
  max-width: 800px;
  margin: 0 auto;
}
#top #section__consultation .flowBoxList .flowBox .num {
  font-size: 28px;
  line-height: 1;
}
#top #section__consultation .flowBoxList .flowBox .ttl {
  margin: 0 0 20px;
  font-size: 24px;
}
#top #section__consultation .flowBoxList .flowBox .txt {
  line-height: 1.7;
}
#top #section__consultation .more {
  max-width: 350px;
  margin: 60px auto 0;
}
#top #section__consultation .more a {
  padding: 20px 30px;
  font-size: 18px;
  background: url("../image/common/more_arrow_right.png") right 30px center no-repeat;
  background-size: 25px auto;
}
#top #section__instagram {
  margin: 120px 0 0;
}
#top #section__instagram .secTtl {
  padding: 0 0 40px;
}
#top #section__instagram .secTtl h2 {
  font-size: 28px;
}
#top #section__instagram .secTtl p {
  font-size: 14px;
}
#top #section__news {
  margin: 100px 0 0;
  padding: 0 0 60px;
}
#top #section__news .secTtl {
  padding: 0 0 40px;
}
#top #section__news .secTtl h2 {
  font-size: 28px;
}
#top #section__news .secTtl p {
  font-size: 14px;
}
#top #section__news .listPanel ul {
  font-size: 15px;
}
#top #section__news .listPanel ul li {
  padding: 20px 0;
}
#top #section__news .listPanel ul li .info .time {
  margin: 0 15px 0 0;
}
#top #section__news .listPanel ul li .ttl {
  padding: 5px 0 0;
}
#top #section__news .listPanel ul li .ttl a {
  display: inline-block;
  position: relative;
}
#top #section__news .more {
  margin: 30px 0 0;
}
#top #section__news .more a {
  padding: 0 40px 0 0;
  background: url("../image/common/more_arrow_right.png") right center no-repeat;
  background-size: 25px auto;
}

/*////////////////////////////////////////////////////////////
	consultation
///////////////////////////////////////////////////////////*/
#consultation .topSection {
  padding: 50px 0 100px;
}
#consultation .topSection .topPanel {
  margin: 0 0 100px;
}
#consultation .topSection .topPanel .topTxt {
  font-size: 16px;
}
#consultation .topSection .photoPanel {
  margin: 0 0 120px;
}
#consultation .topSection .photoPanel .secBox {
  padding: 0 0 30px;
}
#consultation .topSection .photoPanel .secBox .txtBox .ttl {
  font-size: 20px;
}
#consultation .topSection .photoPanel .secBox .txtBox ul li {
  font-size: 15px;
}
#consultation .topSection .photoPanel .secBox .txtBox ul li + li {
  margin: 10px 0 0;
}
#consultation .topSection .photoPanel .photo {
  padding: 0 20px;
}
#consultation .topSection .contentContainer .ttl {
  margin: 0 0 20px;
  font-size: 20px;
}
#consultation .topSection .contentContainer .ttl + .txt {
  margin: 0 0 20px;
  font-size: 15px;
}
#consultation .topSection .contentContainer .listBox + .listBox {
  margin: 15px 0 0;
}
#consultation .topSection .contentContainer .listBox ul li + li {
  margin: 15px 0 0;
}
#consultation .topSection .contentContainer .listBox ul dl dt {
  width: 160px;
  height: 140px;
  padding: 20px 10px;
}
#consultation .topSection .contentContainer .listBox ul dl dd {
  padding: 20px 15px;
  font-size: 14px;
}
#consultation #section__consultation {
  padding: 100px 0;
}
#consultation #section__consultation .secTtl {
  margin: 0 0 40px;
}
#consultation #section__consultation .secTtl h2 {
  font-size: 28px;
}
#consultation #section__consultation .secTtl p {
  font-size: 14px;
}
#consultation #section__consultation .flowBoxList .flowBox {
  padding: 30px 0;
}
#consultation #section__consultation .flowBoxList .flowBox .inner {
  max-width: 800px;
  margin: 0 auto;
}
#consultation #section__consultation .flowBoxList .flowBox .num {
  font-size: 28px;
  line-height: 1;
}
#consultation #section__consultation .flowBoxList .flowBox .ttl {
  margin: 0 0 20px;
  font-size: 24px;
}
#consultation #section__consultation .flowBoxList .flowBox .txt {
  line-height: 1.7;
}
#consultation #section__menu {
  padding: 100px 0;
}
#consultation #section__menu .secTtl {
  margin: 0 0 40px;
}
#consultation #section__menu .secTtl h2 {
  font-size: 28px;
}
#consultation #section__menu .secTtl p {
  font-size: 14px;
}
#consultation #section__menu .topTxt {
  margin: 0 0 40px;
}
#consultation #section__menu .secBoxList {
  margin: 0 auto 50px;
}
#consultation #section__menu .secBoxList .secBox + .secBox {
  margin: 50px 0 0;
}
#consultation #section__menu .secBoxList .secBox dl dt {
  margin: 0 0 15px;
  font-size: 18px;
}
#consultation #section__menu .secBoxList .secBox dl dt span {
  display: block;
}
#consultation #section__menu .secBoxList .secBox dl dd {
  font-size: 15px;
}
#consultation #section__menu aside {
  font-size: 12px;
  line-height: 2;
}
#consultation #section__faq {
  padding: 100px 0;
}
#consultation #section__faq .secTtl {
  margin: 0 0 40px;
}
#consultation #section__faq .secTtl h2 {
  font-size: 28px;
}
#consultation #section__faq .secTtl p {
  font-size: 14px;
}
#consultation #section__faq .secBoxList {
  border-top: 1px solid #d9d9d9;
}
#consultation #section__faq .secBoxList .secBox {
  padding: 30px 0;
}
#consultation #section__faq .secBoxList .secBox dl {
  font-size: 16px;
}
#consultation #section__faq .secBoxList .secBox dl dt {
  gap: 0 15px;
  margin: 0 0 15px;
}
#consultation #section__faq .secBoxList .secBox dl dt span {
  width: 20px;
  font-size: 26px;
  line-height: 1;
}
#consultation #section__faq .secBoxList .secBox dl dd {
  gap: 0 15px;
}
#consultation #section__faq .secBoxList .secBox dl dd span {
  width: 20px;
  font-size: 26px;
  line-height: 1.3;
}
#consultation #section__faq .secBoxList .secBox dl dd .txt {
  line-height: 1.7;
}
#consultation #section__bottom {
  padding: 80px 0;
}
#consultation #section__bottom dl dt {
  margin: 0 0 20px;
  font-size: 24px;
}
#consultation #section__bottom dl dd {
  font-size: 15px;
}

/*////////////////////////////////////////////////////////////
	company
///////////////////////////////////////////////////////////*/
#company .topSection {
  padding: 50px 0 100px;
}
#company .topSection .topPanel {
  margin: 0 0 100px;
}
#company .topSection .topPanel .topTxt {
  font-size: 16px;
}
#company .topSection .photoPanel .secBox {
  padding: 0 0 30px;
}
#company .topSection .photoPanel .secBox .txtBox .ttl {
  font-size: 20px;
}
#company .topSection .photoPanel .photo {
  padding: 0 20px;
}
#company #section__team {
  padding: 0;
}
#company #section__team .secTtl {
  margin: 0 0 40px;
}
#company #section__team .secTtl h2 {
  font-size: 28px;
}
#company #section__team .secTtl p {
  font-size: 14px;
}
#company #section__team .secPanel {
  padding: 0 0 60px;
}
#company #section__team .secPanel .topTxt {
  margin: 0 0 50px;
}
#company #section__team .secPanel .secBox + .secBox {
  margin: 50px 0 0;
}
#company #section__team .secPanel .secBox h3 {
  margin: 0 0 25px;
  font-size: 20px;
}
#company #section__team .secPanel .secBox dl + dl {
  margin: 20px 0 0;
}
#company #section__team .secPanel .secBox dl dt {
  margin: 0 0 5px;
  font-weight: 700;
}
#company #section__message {
  padding: 100px 0;
}
#company #section__message .secTtl {
  margin: 0 0 40px;
}
#company #section__message .secTtl h2 {
  font-size: 28px;
}
#company #section__message .secTtl p {
  font-size: 14px;
}
#company #section__message .messagePanel {
  margin: 0 0 100px;
}
#company #section__message .messagePanel .txtBox {
  margin: 0 0 30px;
}
#company #section__message .messagePanel .txtBox .txt + .txt {
  margin: 20px 0 0;
}
#company #section__message .messagePanel .photoBox .name {
  margin: 20px 0 0;
}
#company #section__message .profileSection h3 {
  margin: 0 0 30px;
  font-size: 20px;
}
#company #section__message .profileSection .infoBox > dl {
  padding: 15px 0;
}
#company #section__message .profileSection .infoBox > dl > dt {
  margin: 0 0 5px;
}
#company #section__message .profileSection .infoBox > dl > dd dl + dl {
  margin: 15px 0 0;
}
#company #section__message .profileSection .infoSection {
  margin: 60px 0 0;
}

/*////////////////////////////////////////////////////////////
	contact
///////////////////////////////////////////////////////////*/
#contact .contactSection {
  padding: 60px 0;
}
#contact .contactSection .topTxt {
  margin: 0 0 100px;
  font-size: 16px;
}
#contact .contactSection .formBox dl {
  padding: 15px 0;
  font-size: 15px;
}
#contact .contactSection .formBox dl dt {
  margin: 0 0 10px;
}
#contact .contactSection .formBox dl dd aside {
  margin: 5px 0 0;
  font-size: 12px;
}
#contact .contactSection .formBox .checkList .wpcf7-form-control {
  display: flex;
  flex-direction: column;
  gap: 10px 0;
}
#contact .contactSection .formBox .propertyList .propertyBox + .propertyBox {
  margin: 20px 0 0;
}
#contact .contactSection .formBox .propertyList .propertyBox .ttl {
  margin: 0 0 10px;
}
#contact .contactSection .formBox .propertyList .propertyBox .unitBox {
  display: flex;
  align-items: center;
}
#contact .contactSection .formBox .propertyList .propertyBox .unitBox .inputBox {
  width: 100px;
}
#contact .contactSection .formBox .propertyList .propertyBox .unitBox .unit {
  display: inline-block;
  margin: 0 0 0 10px;
}
#contact .contactSection .bottomNote {
  margin: 25px 0 0;
}

/* --------------------------------------------------
	news
-------------------------------------------------- */
#news .newsSection {
  padding: 60px 0;
}
#news .newsSection .listPanel ul {
  font-size: 15px;
}
#news .newsSection .listPanel ul li {
  padding: 20px 0;
}
#news .newsSection .listPanel ul li .info .time {
  margin: 0 15px 0 0;
}
#news .newsSection .listPanel ul li .ttl {
  padding: 5px 0 0;
}
#news .newsSection .listPanel ul li .ttl a {
  display: inline-block;
  position: relative;
}
#news .newsSection .detailPanel .ttlBox {
  margin: 0 0 30px;
}
#news .newsSection .detailPanel .ttlBox h2 {
  margin: 0 0 20px;
  font-size: 20px;
}
#news .newsSection .detailPanel .ttlBox .info .time {
  margin: 0 15px 0 0;
}
#news .newsSection .backPanel {
  margin: 40px 0 0;
}

/* --------------------------------------------------
	policy
-------------------------------------------------- */
#policy .policySection {
  padding: 60px 0;
}
#policy .policySection .section {
  margin: 40px 0 0;
}
#policy .policySection .section h2 {
  margin: 0 0 20px;
  font-size: 20px;
}
#policy .policySection .section .txt p + p {
  margin: 25px 0 0;
}