@charset "utf-8";
/* CSS Document */

@media screen and (max-width: 767px) { 
	.hidden-pc { display: block; }
	.hidden-sp { display: none; }
	.visible-pc { display: none;  }
	.visible-sp { display: block; }
	.col-6 { width: 100%; padding: 10%; box-sizing: border-box;}
}
@media screen and (min-width: 768px) { 
	.hidden-pc { display: none; }
	.hidden-sp { display: block; }
	.visible-pc { display: block;  }
	.visible-sp { display: none; }
	td.hidden-sp, th.hidden-sp { display: table-cell; }
	td.visible-pc, th.visible-pc { display: table-cell;  }
	.col-6 { width: 50%; padding: 10px; box-sizing: border-box;}
	#news-detail .right .text .col-6 img { margin: 0; border: none; }
}

.btn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #555;
  border: solid 2px #555;
  border-radius: 3px;
  transition: .4s;
}

.btn-flat-border:hover {
  background: #555;
  color: white;
}

#news .flex {
    margin-top: 5em;
}

.flexbox-container-vertical-center {
    display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
    width: 100%; /* 見た目用 */
    height: 100px; /* 見た目用 */
}

table, caption, tbody, tfoot, thead, tr, th, td {
	border: 1px solid #333 !important;
}

caption {
	border-bottom: none !Important;
}

.table-b.pethotel, .table-b.trimming, .table-b.dogrun,.table-b.recruit {
	margin: 20px auto;
	width: 100%;
	background: #fff;
}

.table-b.pethotel th, .table-b.pethotel td,  .table-b.trimming th,  .table-b.trimming td, .table-b.dogrun td, .table-b.dogrun th,.table-b.recruit th {
	width: calc(100% / 5);
}

.table-b.pethotel th, .table-b.trimming th, .table-b.dogrun.cen th {
	padding: 10px;
	vertical-align: middle;
	text-align: center;
}

.table-b.recruit th {
	padding: 10px;
	vertical-align: middle;
	text-align: left;
}

.table-b.dogrun td, .table-b.dogrun th {
	padding: 10px;
	vertical-align: middle;
}

.table-b.recruit td {
	border: 1px solid #333;
	padding: 10px;
	vertical-align: middle;
	text-align: left;
}

.table-b.pethotel td, .table-b.trimming td, .table-b.dogrun.cen td {
	border: 1px solid #333;
	padding: 10px;
	vertical-align: middle;
	text-align: center;
}

.table-b.dogrun td {
	border: 1px solid #333;
	padding: 10px;
	vertical-align: middle;
}

.table-b.pethotel caption ,.table-b.table-b.trimming tr:first-child td, .table-b.dogrun caption {
    background: #555;
    color: #fff;
}

.table-b.dogrun li {
	font-size: 1.3rem;
	text-indent: -1em;
	margin-left: 1em;
}

.table-b.dogrun li:before {
    content: "◆";
}

.table-b img {
    margin: 0 !important;
    border-radius: 0 !important;
}

.table.table-bordered {
	
}

.table.table-bordered th, .table.table-bordered td {
    padding: 0.5em;
	border-color: #9c7f2a !important;
}

.table.table-bordered th {
    white-space: nowrap;
    word-break: keep-all;
    width: 5em;
	-moz-text-align-last: justify;
	text-align-last: justify;
}

#header .title.btn-balloon {
	position: fixed;
	cursor: pointer;
	top: 10px;
	right: 10px;
}

.logo h1 a span {
	display: none;
}
/*190523追加*/
.can01{
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 100%;
}

@media screen and (min-width: 768px) {
	/*.btn-balloon img {
		min-width: 100px;
	}*/
	.btn-balloon img {
	    height: 90px;
	    width: auto;
    }
    
    .wrapper .left .address-info {
	    position: absolute;
	    top: 200px;
	}
	
	.logo {
		margin-top: calc(100vw / 8);
	}
	
	.logo.fixed {
	    margin-top: 0px;
	}
    
}

@media screen and (min-width: 1200px) {
	.logo {
		margin-top: 70px;
	}
	
	.main {
		margin: 0 10px 0 0;
		width: 70%;
	}
	
}


@media screen and (max-width: 767px) {
	#header .title {
	    z-index: 1000;
	}

	.btn-balloon span {
		font-size: 1rem;
		text-align: center;
		margin: auto;
		position: absolute;
		bottom: -20px;
		left: 0;
	    right: 0;
	}
	
	.logo h1 a span {
		font-size: 14px;
		display: none;
		white-space: nowrap;
		text-align: center;
	}
	
	.logo.fixed h1 a span {
		display: block;
		margin-top: -5px;
	}
	.logo.fixed h1 a {
		text-align: center;
	}
	
	.logo.fixed h1 a img {
	    height: 115px;
	}
}
	
.title-balloon {
	position   : fixed;                
	padding: 10px;                        /* テキストの前後の余白 */
	background-color: #1e1e1e;       	  /* 背景色（透明度） */
	width: 300px;                         /* 吹き出し全体の幅 */
	right : 0;                           /* 表示位置 */
	top: 20px;
	z-index: 1000;
	transform: translate(-50%);           /* 表示位置の調整 */
	border-radius: 10px;
}

.title-balloon:after{
	border-left: 20px solid #1e1e1e;  		/* 吹き出し口の幅・色 */
	border-top: 10px solid transparent;     /* 吹き出し口の高さ１／２ */
	border-bottom: 10px solid transparent;  /* 吹き出し口の高さ１／２ */
	right: -20px;                           /* 吹き出し口の位置調整 */
	top : 20%;                       		/* 吹き出し口の縦位置 */
	content: "";                       		/* コンテンツの挿入 */
	position: absolute;                		/* 親要素を基準 */
}

@media screen and (max-width: 767px) { 
	.title-balloon {
		width: 90%;
		left: 48%;
		top: 20%;
	}
	
	.title-balloon:after{
		border-bottom: 20px solid #1e1e1e;  		/* 吹き出し口の幅・色 */
		border-right: 10px solid transparent;     /* 吹き出し口の高さ１／２ */
		border-left: 10px solid transparent;  /* 吹き出し口の高さ１／２ */
		border-top: 0;
		top: -15px;
		right: 4%;
		content:"";
		position: absolute;
	}
	
}

.title-balloon a {
	color: #fff;
	opacity: 1;
}

.title-balloon a:hover {
	color: #fff;
	opacity: 0.5;
}

@media screen and (max-width: 767px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .table-b.pethotel th,
  .table-b.pethotel td,
  .table-b.trimming th,
  .table-b.trimming td{
　　border-bottom: none;
    width: 100%;
  }
	
	#sougei .col-6 { padding: 0; }
}

.plan-title {
    text-align: left;
}

.plan-title span {
    float: right;
}

.plan-title:before {
    content: "▼";
}

.plan-title:after {
    content: "";
    clear: both;
    display: block;
}

h2.font-large { font-size: 1.25em; }
.font-large + p { margin-top: 0 !important; }
.font-large strong { font-size: 1.5em; }

@media screen and (min-width: 1601px) {
	#news-detail .right .text .font-large {
		margin-top: calc((100vw - 0vw * 2) / 120 * 3);
	}
	#news-detail .right .text .spacer {
		margin-bottom: calc((100vw - 0vw * 2) / 120 * 3);
	}
}

@media screen and (min-width: 768px) {
	#news-detail .right .text .font-large {
		margin-top: calc((100vw - 0vw * 2) / 120 * 3);
	}
	#news-detail .right .text .spacer {
		margin-bottom: calc((100vw - 0vw * 2) / 120 * 3);
	}
}

@media screen and (max-width: 767px) {
	#news-detail .right .text .font-large {
		margin-top: calc((100vw - 0vw * 2) / 60 * 3);
	}
	#news-detail .right .text .spacer {
		margin-bottom: calc((100vw - 0vw * 2) / 60 * 3);
	}	
}

#news-detail .right .text .flexbox-container-vertical-center + .font-large {
	margin-top: 0;
}

#news-detail .right .text p {
    white-space: pre-wrap;
}

#news-detail .right .text img {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100%;
}

.inline-block {
	letter-spacing: -100px;
	font-size: 0;
}

.inline-block-child {
	font-size: initial;
    display: inline-block;
    width: 50%;
    letter-spacing: normal;
    vertical-align: top;
    box-sizing: border-box;
    padding-right: 30px;
}

.inline-block-child:last-child {
	padding-right: 0;
}

@media screen and (max-width: 767px) {
	.inline-block-child {
		width: 100%;
		padding-right: 0;
	}	
}


@media screen and (min-width: 768px) {
#header .wrapper address img {
    width: calc((100vw - 0vw * 2) / 5);
}
}
#header .title h2 {
text-align: center;
}


/* スマホ用 */
@media screen and (max-width: 767px) {
	.fb-container {
		width: 100%;
		max-width: 500px;
		margin-bottom: 20px;
	}
}
 
/* PC用 */
@media screen and (min-width: 768px) {
	.fb-container {
	width: 500px;
	}
    .fb-page{
	margin-top: 20px;        
    }
}

/* アコーディオンB */
.cp_actab {
position: relative;
overflow: hidden;
width: 100%;
margin: 0 auto;
color: #fff;
}

.cp_actab input {
position: absolute;
z-index: -1;
opacity: 0;
}

.cp_actab label {
font-weight: bold;
line-height: 3;
position: relative;
display: block;
padding: 0 0 0 1em;
cursor: pointer;
margin: 0 0 1px 0;
background: #ff8500;
}

.cp_actab .cp_actab-content {
overflow: hidden;
max-height: 0;
-webkit-transition: max-height 0.5s;
transition: max-height 0.5s;
color: #333333;
background: #eaeaea;
}

.cp_actab .cp_actab-content p {
margin: 1em;
font-size: 14px;
}

.cp_actab p{
margin-bottom:0px;
}

/* :checked */
.cp_actab input:checked ~ .cp_actab-content {
max-height: 20em;
}

/*チェックのアイコン（↓）*/
.cp_actab label:after{
color: #fff;
font-family:"Font Awesome 5 Free";
content:" \f078";
position: absolute;
top: 0;
right: 0;
width: 2em;
height: 3em;
}

/*チェックのアイコン（↑）*/
.cp_actab input:checked ~ label::after {
color: #fff;
font-family:"Font Awesome 5 Free";
content:" \f077";
}

#news-detail .right .text .cp_actab-content p {
margin-top: 1em;
}

.concept-block {
	position: relative;
    z-index: 6;
	background: rgba(255,255,255,0.5);
	border-radius: 10px;
	margin: 4em 0;
}

.concept-block p {
	font-weight: normal;
	margin-bottom: 1em;
}

.concept-block h4 {
	font-size: 1.75em;
}

.concept-block h5 {
	font-size: 1.25em;
}

.concept-block h4{
	margin-bottom: 1em;
}

.concept-block h5{
	margin: 1em 0;
}

#concept h3, #concept h4, #concept h5, #concept strong {
	text-shadow: 
    white 2px 0px,  white -2px 0px,
    white 0px -2px, white 0px 2px,
    white 2px 2px , white -2px 2px,
    white 2px -2px, white -2px -2px,
    white 1px 2px,  white -1px 2px,
    white 1px -2px, white -1px -2px,
    white 2px 1px,  white -2px 1px,
    white 2px -1px, white -2px -1px;
}

.main,.main2 {
	margin-bottom: 10px;
	width: 100%;
}
.main3 {
	width: 100%;
	padding: 2% 2% 0;
}

.side {
	padding: 2%;
}
.main,.main2 {
	padding: 2%;
}

.flexbox + .flexbox .main2 {
	padding: 0 2% 2%;
}

.flex-child {
    padding: 1em 0;
    box-sizing: border-box;
}

.flex-child span {
    background: #9c7f2a;
    padding: 0.5em;
    display: block;
    border-radius: 5px;
    font-size: 1.2em;
    color: #fff;
    text-align: center;
	margin-bottom: 1em;
}
 
.rakurisu p {
	margin-bottom: 1em;
}

#function .flex-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 1em;
    background: #9c7f2a;
	border-radius: 5px;
}

#function .flex-child span {
	background: none;
    padding: 0.5em;
    display: block;
    border-radius: 0;
    font-size: 1.2em;
    color: #fff;
    text-align: center;
	margin-bottom: 0;
}

/* Responsive */
@media ( min-width : 768px ){
	.flexbox {
		display: -webkit-flex;
		display: flex;
	}
	
	.flexbox-wrap {
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
	}
	
	.main {
		margin: 0 10px 0 0;
	}
	.main2 {
		margin: 0 10px 0 0;
	}
	.main3 {
		margin: 0 10px 0 0;
	}
	
	.main3 h4 {
		margin-bottom: 0;
	}
	
	.flex-child {
		width: calc(100% / 3);
	}
	
	.rakurisu .flexbox-wrap {
		display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:flex;
		-webkit-box-pack:justify;
		-moz-box-pack:justify;
		-webkit-flex-pack:justify;
		-moz-flex-pack:justify;
		-ms-flex-pack:justify;
		-webkit-justify-content:space-between;
		-moz-justify-content:space-between;
		justify-content:space-between;
	}
	
	.rakurisu .flex-child {
		width: calc(96% / 3);
	}
	
	#function .flex-child {
   		width: calc(96% / 3);
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin-bottom: 1em;
		background: #9c7f2a;
		border-radius: 5px;
	}
	
	#function .flex-child span {
		padding: 0.5em;
		display: block;
		border-radius: 5px;
		font-size: 1.2em;
		color: #fff;
		text-align: center;
	}
	
} 

@media ( min-width : 768px ) and ( max-width : 959px ) {

	.flexbox {
		display: block;
	}
	
}

/*------------------------------------------------------------------------------------ detail */
#detail {
  overflow: hidden;
  position: relative; }
  @media screen and (min-width: 768px) {
    #detail {
      padding-top: calc((100vw - 0vw * 2) / 120 * 5); } }
  @media screen and (min-width: 1601px) {
    #detail {
      padding-top: calc((100vw - 0vw * 2) / 120 * 5); } }
  @media screen and (min-width: 768px) {
    #detail {
      margin-top: 0; } }
  @media screen and (min-width: 1601px) {
    #detail {
      margin-top: 0; } }
  #detail .wrapper {
    position: relative;
    display: block; }
    #detail .wrapper:after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    @media screen and (min-width: 768px) {
      #detail .wrapper {
        margin: calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20) calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20); } }
    @media screen and (min-width: 1601px) {
      #detail .wrapper {
        margin: calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20) calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20); } }
  #detail .sec-title {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }
    #detail .sec-title img {
      margin-top: -12px; }
      @media screen and (min-width: 768px) {
        #detail .sec-title img {
          margin-right: calc((100vw - 0vw * 2) / 120 * 1); } }
      @media screen and (min-width: 1601px) {
        #detail .sec-title img {
          margin-right: calc((100vw - 0vw * 2) / 120 * 1); } }
  #detail h3 {
    position: relative;
    z-index: 5;
    font-size: 40px;
    font-size: 4rem; }
    @media screen and (min-width: 768px) {
      #detail h3 {
        margin-top: calc((100vw - 0vw * 2) / 120 * 5); } }
    @media screen and (min-width: 1601px) {
      #detail h3 {
        margin-top: calc((100vw - 0vw * 2) / 120 * 5); } }
  #detail .text {
    position: relative;
    z-index: 6;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    float: right; }
    @media screen and (min-width: 768px) {
      #detail .text {
        margin-top: calc((100vw - 0vw * 2) / 120 * 27); } }
    @media screen and (min-width: 1601px) {
      #detail .text {
        margin-top: calc((100vw - 0vw * 2) / 120 * 27); } }
    #detail .text p {
      letter-spacing: 0.08em;
      line-height: 1.7; }
      @media screen and (min-width: 768px) {
        #detail .text p {
          margin-right: calc((100vw - 0vw * 2) / 120 * 2); } }
      @media screen and (min-width: 1601px) {
        #detail .text p {
          margin-right: calc((100vw - 0vw * 2) / 120 * 2); } }
      @media screen and (min-width: 768px) {
        #detail .text p:first-child {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
      @media screen and (min-width: 1601px) {
        #detail .text p:first-child {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
    #detail .text h4 {
      white-space: nowrap;
      letter-spacing: normal;
      line-height: 1.2;
      font-size: 36px;
      font-size: 3.6rem; }
      @media screen and (min-width: 768px) {
        #detail .text h4 {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
      @media screen and (min-width: 1601px) {
        #detail .text h4 {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
  
@media screen and (max-width: 767px) {
  #detail {
    padding-top: calc((100vw - 0vw * 2) / 60 * 5);
    margin-top: 0; }
    #detail .wrapper {
      margin: calc((100vw - 0vw * 2) / 60 * 0) calc((100vw - 0vw * 2) / 60 * 3) calc((100vw - 0vw * 2) / 60 * 0) calc((100vw - 0vw * 2) / 60 * 3); }
    #detail .sec-title {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      #detail .sec-title img {
        width: calc((100vw - 0vw * 2) / 60 * 7);
        margin-top: -12px;
        margin-right: calc((100vw - 0vw * 2) / 60 * 0); }
      #detail .sec-title:before {
        margin-left: auto; }
      #detail .sec-title:after {
        margin-right: auto; }
    #detail h3 {
      text-align: center;
      margin-top: calc((100vw - 0vw * 2) / 60 * 8);
      font-size: 24px;
      font-size: 2.4rem; }
    #detail .text {
      margin-top: calc((100vw - 0vw * 2) / 60 * 30);
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      float: none; }
      #detail .text .text-block {
        width: 100%;
        display: block;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        margin-bottom: calc((100vw - 0vw * 2) / 60 * 6);
        padding-right: calc((100vw - 0vw * 2) / 60 * 3); }
      #detail .text .text-block + .text-block {
        padding-right: calc((100vw - 0vw * 2) / 60 * 15); }
      #detail .text p {
        font-size: 14px;
        font-size: 1.4rem;
        margin-right: calc((100vw - 0vw * 2) / 60 * 2); }
      #detail .text h4 {
        text-align: center;
        line-height: 1.4;
        font-size: 28px;
        font-size: 2.8rem; }
}

/*------------------------------------------------------------------------------------ qa */
#qa {
  overflow: hidden;
  position: relative; }
@media screen and (min-width: 768px) {
  #qa {
    padding-top: calc((100vw - 0vw * 2) / 120 * 5); } }
@media screen and (min-width: 1601px) {
  #qa {
    padding-top: calc((100vw - 0vw * 2) / 120 * 5); } }
@media screen and (min-width: 768px) {
  #qa {
    margin-top: calc((100vw - 0vw * 2) / 120 * 10); } }
@media screen and (min-width: 1601px) {
  #qa {
    margin-top: calc((100vw - 0vw * 2) / 120 * 10); } }
  #qa .wrapper {
    position: relative;
    display: block; }
    #qa .wrapper:after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    @media screen and (min-width: 768px) {
      #qa .wrapper {
        margin: calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20) calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20); } }
    @media screen and (min-width: 1601px) {
      #qa .wrapper {
        margin: calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20) calc((100vw - 0vw * 2) / 120 * 0) calc((100vw - 0vw * 2) / 120 * 20); } }
  #qa .sec-title {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
    #qa .sec-title img {
      margin-top: -12px; }
      @media screen and (min-width: 768px) {
        #qa .sec-title img {
          margin-right: calc((100vw - 0vw * 2) / 120 * 1); } }
      @media screen and (min-width: 1601px) {
        #qa .sec-title img {
          margin-right: calc((100vw - 0vw * 2) / 120 * 1); } }
  #qa h3 {
    position: relative;
    z-index: 5;
    font-size: 40px;
    font-size: 4rem; }
    @media screen and (min-width: 768px) {
      #qa h3 {
        margin-top: calc((100vw - 0vw * 2) / 120 * 5); } }
    @media screen and (min-width: 1601px) {
      #qa h3 {
        margin-top: calc((100vw - 0vw * 2) / 120 * 5); } }
  #qa .text {
    position: relative;
    z-index: 6;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    float: right; }
    @media screen and (min-width: 768px) {
      #qa .text {
        margin-top: calc((100vw - 0vw * 2) / 120 * 27); } }
    @media screen and (min-width: 1601px) {
      #qa .text {
        margin-top: calc((100vw - 0vw * 2) / 120 * 27); } }
    #qa .text p {
      letter-spacing: 0.08em;
      line-height: 1.7; }
      @media screen and (min-width: 768px) {
        #qa .text p {
          margin-right: calc((100vw - 0vw * 2) / 120 * 2); } }
      @media screen and (min-width: 1601px) {
        #qa .text p {
          margin-right: calc((100vw - 0vw * 2) / 120 * 2); } }
      @media screen and (min-width: 768px) {
        #qa .text p:first-child {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
      @media screen and (min-width: 1601px) {
        #qa .text p:first-child {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
    #qa .text h4 {
      white-space: nowrap;
      letter-spacing: normal;
      line-height: 1.2;
      font-size: 36px;
      font-size: 3.6rem; }
      @media screen and (min-width: 768px) {
        #qa .text h4 {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
      @media screen and (min-width: 1601px) {
        #qa .text h4 {
          margin-right: calc((100vw - 0vw * 2) / 120 * 9); } }
  
@media screen and (max-width: 767px) {
  #qa {
    padding-top: calc((100vw - 0vw * 2) / 60 * 5);
    margin-top: 0; }
    #qa .wrapper {
      margin: calc((100vw - 0vw * 2) / 60 * 0) calc((100vw - 0vw * 2) / 60 * 3) calc((100vw - 0vw * 2) / 60 * 0) calc((100vw - 0vw * 2) / 60 * 3); }
    #qa .sec-title {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      #qa .sec-title img {
        width: calc((100vw - 0vw * 2) / 60 * 7);
        margin-top: -12px;
        margin-right: calc((100vw - 0vw * 2) / 60 * 0); }
      #qa .sec-title:before {
        margin-left: auto; }
      #qa .sec-title:after {
        margin-right: auto; }
    #qa h3 {
      text-align: center;
      margin-top: calc((100vw - 0vw * 2) / 60 * 8);
      font-size: 24px;
      font-size: 2.4rem; }
    #qa .text {
      margin-top: calc((100vw - 0vw * 2) / 60 * 30);
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      float: none; }
      #qa .text .text-block {
        width: 100%;
        display: block;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        margin-bottom: calc((100vw - 0vw * 2) / 60 * 6);
        padding-right: calc((100vw - 0vw * 2) / 60 * 3); }
      #qa .text .text-block + .text-block {
        padding-right: calc((100vw - 0vw * 2) / 60 * 15); }
      #qa .text p {
        font-size: 14px;
        font-size: 1.4rem;
        margin-right: calc((100vw - 0vw * 2) / 60 * 2); }
      #qa .text h4 {
        text-align: center;
        line-height: 1.4;
        font-size: 28px;
        font-size: 2.8rem; }
}