@charset "utf-8";

/* ======================================================
 * parts_pc.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Elements >>> Text
 * - Elements >>> List
 * - Elements >>> Link
 * - Elements >>> Image
 * - Elements >>> Other
 * - Conditional Elements >>> Heading
 * - Conditional Elements >>> Navi
 * - Layout >>> Table
 * - Layout >>> Column
 * - Layout >>> Box
 * - Layout >>> Other
 * - Components
 * - Clearfix
 * Media Queries
====================================================== */

@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- sprite ----- */
  .a-blank::after,
  .a-pdf::after,
	.a-xls::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .accordion-layout > .accordion_trigger::after,
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after,
  .plugin-layout a .a-blank::after {
    vertical-align: top;
    background: url(/common/img/com_sprite01.png) no-repeat;
    content: "";
  }
  .a-blank::after,
  [class*="heading-lv"] .a-blank .heading_title::after,
  .news-layout .a-blank .news_title::after,
  .plugin-layout a .a-blank::after {
    width: 12px;
    height: 12px;
    background-position: -9px -181px;
  }
  .a-pdf::after,
  [class*="heading-lv"] .a-pdf .heading_title::after,
  .news-layout .a-pdf .news_title::after {
    width: 13px;
    height: 15px;
    background-position: -65px -181px;
  }
	.a-xls::after,
  [class*="heading-lv"] .a-xls .heading_title::after,
  .news-layout .a-xls .news_title::after {
    width: 13px;
    height: 15px;
    background-position: -124px -181px;
  }
  [class*="heading-lv"] .a-blank::after,
  [class*="heading-lv"] .a-pdf::after,
	[class*="heading-lv"] .a-xls::after{
    display: none;
  }
  
  /* link-inline */
  .link-inline.a-blank::after,
  .link-inline.a-pdf::after,
	.link-inline.a-xls::after{
    display: inline-block;
    margin: .35em 5px 0;
  }
  
  /* link-text */
  .link-text > li > .a-blank::after,
  .link-text > li > .a-pdf::after,
	.link-text > li > .a-xls::after{
    display: inline-block;
    margin: .3em 0 0 12px;
  }
  
  /* link-button */
  .link-button > li > .a-blank::after,
  .link-button > li > .a-pdf::after,
	.link-button > li > .a-xls::after{
    position: absolute;
    top: 50%;
    right: 13px;
    margin-top: -7px;
  }
  
  /* heading-lv** */
  [class*="heading-lv"] .a-blank .heading_title::after {
    display: inline-block;
    margin: .4em 0 0 15px;
  }
  [class*="heading-lv"] .a-pdf .heading_title::after {
    display: inline-block;
    margin: .3em 0 0 15px;
  }
	[class*="heading-lv"] .a-xls .heading_title::after {
    display: inline-block;
    margin: .3em 0 0 15px;
  }
  
  /* news-layout */
  .news-layout .a-blank .news_title::after,
  .news-layout .a-pdf .news_title::after,
	.news-layout .a-xls .news_title::after{
    display: inline-block;
  }
  .news-layout .a-blank .news_title::after {
    margin: .35em 0 0 10px;
  }
  .news-layout .a-pdf .news_title::after {
    margin: .2em 0 0 10px;
  }
	.news-layout .a-xls .news_title::after {
    margin: .2em 0 0 10px;
  }
  
  /* plugin-layout */
  .plugin-layout a .a-blank::after {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: .3em 9px 0 9px;
  }
  
  /* ----- opacity ----- */
  .link-inline:hover,
  .link-text > li > a:hover,
  [class*="heading-lv"] a:hover .heading_title,
  .plugin-layout a:hover .a-blank {
    opacity: .6;
  }
  
  /* ----- data-row-pc ----- */
  [data-row-pc]:not([data-row-pc="1"]) {
    -webkit-display: flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  [data-row-pc] > * {
    margin-left: 28px;
  }
  [data-row-pc="2"] > *:nth-child(-n+2),
  [data-row-pc="3"] > *:nth-child(-n+3),
  [data-row-pc="4"] > *:nth-child(-n+4),
  [data-row-pc="5"] > *:nth-child(-n+5),
  [data-row-pc="6"] > *:nth-child(-n+6),
  [data-row-pc="7"] > *:nth-child(-n+7),
  [data-row-pc="8"] > *:nth-child(-n+8) {
    margin-top: 0 !important;
  }
  [data-row-pc="1"] > *,
  [data-row-pc="2"] > *:nth-child(2n+1),
  [data-row-pc="3"] > *:nth-child(3n+1),
  [data-row-pc="4"] > *:nth-child(4n+1),
  [data-row-pc="5"] > *:nth-child(5n+1),
  [data-row-pc="6"] > *:nth-child(6n+1),
  [data-row-pc="7"] > *:nth-child(7n+1),
  [data-row-pc="8"] > *:nth-child(8n+1) {
    margin-left: 0 !important;
  }
  [data-row-pc="2"] > * {
    width: calc((100% - 28px) / 2);
  }
  [data-row-pc="3"] > * {
    width: calc((100% - 56px) / 3);
  }
  [data-row-pc="4"] > * {
    width: calc((100% - 84px) / 4);
  }
  [data-row-pc="5"] > * {
    width: calc((100% - 112px) / 5);
  }
  [data-row-pc="6"] > * {
    width: calc((100% - 140px) / 6);
  }
  [data-row-pc="7"] > * {
    width: calc((100% - 168px) / 7);
  }
  [data-row-pc="8"] > * {
    width: calc((100% - 196px) / 8);
  }
  
  /* ----- data-align-items-pc ----- */
  [data-align-items-pc="flex-start"] {
    align-items: flex-start!important;
  }
  [data-align-items-pc="flex-end"] {
    align-items: flex-end!important;
  }
  [data-align-items-pc="center"] {
    align-items: center!important;
  }
  [data-align-items-pc="baseline"] {
    align-items: baseline!important;
  }
  [data-align-items-pc="stretch"] {
    align-items: stretch!important;
  }

  /* ----- data-justify-content-pc ----- */
  [data-justify-content-pc="flex-start"] {
    justify-content: flex-start!important;
  }
  [data-justify-content-pc="flex-end"] {
    justify-content: flex-end!important;
  }
  [data-justify-content-pc="center"] {
    justify-content: center!important;
  }
  [data-justify-content-pc="space-between"] {
    justify-content: space-between!important;
  }
  [data-justify-content-pc="space-around"] {
    justify-content: space-around!important;
  }

  /* ----- data-direction-pc ----- */
  [data-direction-pc="row"] {
    flex-direction: row!important;
  }
  [data-direction-pc="row-reverse"] {
    flex-direction: row-reverse!important;
  }
  [data-direction-pc="col"] {
    flex-direction: column!important;
  }
  [data-direction-pc="col-reverse"] {
    flex-direction: column-reverse!important;
  }
  
  /* ----- section ----- */
  section > *:last-child {
    margin-bottom: 0 !important;
  }
  .contents > section + section > [class^="heading"] {
    margin-top: 60px;
  }
  
  /* ------------------------------------------------------
   * Elements >>> Text
  ------------------------------------------------------ */
  /* ----- text-lead ----- */
  .text-lead {
    font-size: 1.6rem;
    font-weight: bold;
  }
  .text-lead > .f-small {
    font-size: 1.4rem;
    font-weight: normal;
  }
  /* ----- text-lead-v2 ----- */
  .text-lead-v2 {
    margin: 30px auto;
    text-align: center;
  }
  .text-lead-v2 p {
    display: inline-block;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.3;
    color: #fff;
    text-shadow: -1px -1px 0 #000,-1px 0 0 #000,-1px 1px 0 #000,0 -1px 0 #000,0 1px 0 #000,1px -1px 0 #000,1px 0 0 #000,1px 1px 0 #000;	
  }
  
  /* ----- text-discount ----- */
  .text-discount > [class^="text_"] {
    display: block;
    text-align: center;
  }
  .text-discount > .text_before {
    padding-bottom: 3px;
  }
  .text-discount > .text_after {
    padding-top: 1px;
    color: #dd1133;
    font-weight: bold;
  }
  .text-discount > .text_arrow {
    position: relative;
    height: 11px;
    text-align: left;
    text-indent: -99999px;
  }
  .text-discount > .text_arrow::before {
    position: absolute;
    top: 0;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -9px;
    border-width: 11px 9px 11px 9px;
    border-style: solid;
    border-color: #93cddd transparent transparent transparent;
    content: "";
  }
  
  /* ------------------------------------------------------
   * Elements >>> List
  ------------------------------------------------------ */
  [class*="list-note"],
  [class*="list-bullet"],
  [class*="list-order"] {
    margin-top: 1em;
  }
  [class*="list-note"] > li + li,
  [class*="list-bullet"] > li + li,
  [class*="list-order"] > li + li,
  .is-nest {
    margin-top: .5em;
  }
  * > [class*="list-bullet"] {
    margin-top: 0;
  }
  
  /* ----- list-note ----- */
  .list-note > li {
    position: relative;
    padding-left: 1.5em;
  }
  .list-note > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-note-order ----- */
  .list-note-order > li {
    position: relative;
    padding-left: 3em;
  }
  .list-note-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-note-order > li > .list_mark::after {
    content: ".";
  }
  
  /* ----- list-bullet ----- */
  .list-bullet > li {
    position: relative;
    padding-left: 13px;
  }
  
  /* icon */
  .list-bullet > li::before {
    position: absolute;
    top: .7em;
    left: 4px;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: #333;
    content: "";
  }
  
  /* ----- list-bullet-v2 ----- */
  .list-bullet-v2 > li {
    position: relative;
    padding-left: 13px;
  }
  
  /* icon */
  .list-bullet-v2 > li::before {
    position: absolute;
    top: .6em;
    left: 0;
    width: 5px;
    height: 5px;
    vertical-align: top;
    background-color: #858585;
    content: "";
  }
  
  /* ----- list-bullet-v3 ----- */
  .list-bullet-v3 > li {
    position: relative;
    padding-left: 15px;
    color: #b10011;
  }
  .list-bullet-v3 .list_em {
    font-size: 1.6rem;
    font-weight: bold;
  }
  
  /* icon */
  .list-bullet-v3 > li::before {
    position: absolute;
    top: .7em;
    left: 0;
    width: 5px;
    height: 5px;
    background-color: #b10011;
    content: "";
  }
  
  /* ----- list-bullet-v4 ----- */
  .list-bullet-v4 > li {
    position: relative;
    margin-bottom: 1em;
    padding: 0 0 1em 18px;
    border-bottom: 1px solid #ccc;
  }
  .list-bullet-v4 > li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  .list-bullet-v4 .list_em {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .list-bullet-v4 .list_em + *,
  .list-bullet-v4 .list-note {
    margin-top: .5em !important;
  }
  .list-bullet-v4[data-row-pc="2"] > li {
    margin-top: 1.5em;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  
  /* icon */
  .list-bullet-v4 > li::before {
    position: absolute;
    top: .7em;
    left: 7px;
    width: 4px;
    height: 4px;
    border-radius:  4px;
    background-color: #333;
    content: "";
  }
  
  /* ----- list-order ----- */
  .list-order > li {
    position: relative;
    padding-left: 2em;
  }
  .list-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-order-v2 ----- */
  .list-order-v2 > li {
    position: relative;
    padding-left: 3em;
    font-size: 1.4rem;
  }
  .list-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-description ----- */
  .list-description {
    display: table;
    margin: 20px 0;
  }
  .list-description > dt {
    display: table-cell;
    width: 174px;
    padding: 21px 10px 20px;
    background-color: #e6e4e2;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
  }
  .list-description > dd {
    display: table-cell;
    vertical-align: middle;
    padding-left: 20px;
  }
  .list-description-v2 {
    margin-top: 20px;
  }
  .list-description-v2 + .list-description-v2 {
    margin-top: 0;
  }
  .list-description-v2[data-break-pc="1"] > dt {
    width: 100%;
    font-weight: bold;
  }
  .list-description-v2[data-break-pc="2"] > dt {
    clear: left;
    float: left;
    font-weight: bold;
  }
  .list-description-v2[data-break-pc="1"] > dd {
    width: 100%;
  }
  .list-description-v2[data-break-pc="2"] > dd {
    overflow: hidden;
  }
  
  /* ----- list-icon ----- */
  .list-icon > li > [class^="i-"] {
    display: inline-block;
    padding: 4px 20px 3px;
    color: #fff;
  }
  .list-icon[data-row-pc="auto"] > li {
    margin: 5px 10px 0 0;
  }
  
  /* ----- status-icon ----- */
  .status-icon > .i-info {
    white-space: nowrap;
    padding: 4px 20px 3px;
    color: #fff;
    font-size: 1.4rem;
    font-weight: normal;
  }
	
	/* ----- 190312_追記 ----- */
	.charter-point {
		display: flex;
		flex-flow: row wrap;
	}
	.charter-point li {
		margin: 0 5px 5px 0;
		background-color: #ffeef1;
		padding: 3px 0;
		width: calc((100% - 20px) / 5);
		text-align: center;
	}
  .charter-point li:nth-child(5n) {
    margin-right: 0 !important;
  }
	
  /* ------------------------------------------------------
   * Elements >>> Link
  ------------------------------------------------------ */  
  /* ----- link-text ----- */
  .link-text {
    margin: 2em 0;
  }
  .link-text > li + li {
    margin-top: .5em;
  }
  .link-text > li > a {
    display: inline-block;
    position: relative;
    padding-left: 14px;
  }
  
  /* icon */
  .link-text > li > a::before {
    position: absolute;
    top: .5em;
    left: -3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 6px;
    height: 6px;
    border-top: 1px solid #d13;
    border-right: 1px solid #d13;
    content: "";
  }
  
  /* data-row-pc */
  .link-text[data-row-pc="auto"] {
    margin-right: -60px;
  }
  .link-text[data-row-pc="auto"] > li {
    margin: 0 60px 0 0;
  }
  
  /* ----- link-faq ----- */
  .link-faq > li {
    margin-top: 17px;
  }
  .link-faq > li > a {
    display: inline-block;
    position: relative;
    padding-left: 41px;
  }
  .link-faq > li > a::before {
    position: absolute;
    top: -.2em;
    left: 0;
    width: 30px;
    height: 30px;
    background-color: #e6e4e2;
    color: #333;
    font-family: Arial, Helvetica, "sans-serif";
    font-size: 2rem;
    font-weight: bold;
    line-height: 30px;
    text-align: center;
    content: "Q";
  }
  
  /* ----- link-button ----- */
  .link-button {
    margin: 2em 0;
  }
  .link-button > li > a {
    display: inline-block;
    padding: 16px 40px 15px;
    border: 1px solid #bbb;
    background-color: #fff;
    color: #333;
    text-align: center;
    text-decoration: none;
  }
  [class^="link-button"][data-row-pc] > li > a {
    width: 100%;
  }
  [class^="link-button"][data-row-pc="3"] > li > a,
  [class^="link-button"][data-row-pc="4"] > li > a {
    padding: 16px 20px 15px;
  }
  [class^="link-button"][data-row-pc] > li + li {
    margin-top: 28px;
  }
  .link-button .link_label {
    display: inline-block;
    font-weight: bold;
  }
  .link-button > li > a:hover {
    color: #3390d1;
  }
  .link-button > li > a:hover .link_label {
    text-decoration: underline;
  }
  .link-button.tour-bus-stop-links > li + li {
    margin-top: 14px;
  }
  
  /* icon */
  .link-button > li > a::after {
    display: none;
  }
  .link-button .link_label::after {
    display: inline-block;
    width: 6px;
    height: 8px;
    vertical-align: top;
    margin: .5em 0 0 10px;
    background: url(/common/img/com_sprite01.png) no-repeat -9px -154px;
    content: "";
  }
  .link-button .a-blank .link_label::after {
    width: 12px;
    height: 12px;
    margin: .4em 0 0 8px;
    background-position: -9px -181px;
  }
  .link-button .a-pdf .link_label::after {
    width: 13px;
    height: 15px;
    margin-top: .3em;
    background-position: -65px -181px;
  }
	.link-button .a-xls .link_label::after {
    width: 13px;
    height: 15px;
    margin-top: .3em;
    background-position: -124px -181px;
  }
  .link-button .a-back .link_label::before {
    display: inline-block;
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
    width: 6px;
    height: 8px;
    vertical-align: top;
    margin: .5em 10px 0 0;
    background: url(/common/img/com_sprite01.png) no-repeat -9px -154px;
    content: "";
  }
  .link-button .a-back .link_label::after {
    display: none;
  }
  /* --- link-button-strong --- */ 
  .link-button > li.link-button-strong > a,
  .link-button > li.link-button-strong > span {
    border: none;
    background-color: #d13;
    color: #fff;
  }
  /* icon */ 
  .link-button > li.link-button-strong > a > .link_label::after {
    background: url(/common/img/com_sprite01.png) no-repeat -300px -100px;;
  }
  /* ----- link-button-v2 ----- */
  .link-button-v2 {
    margin: 2em 0;
  }
  .link-button-v2 > li > a,
  .link-button-v2 > li > span {
    display: inline-block;
    padding: 14px 40px 13px;
    background-color: #d13;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v2 .link_label {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .link-button-v2 > li > a:hover {
    opacity: .8;
  }
  .link-button-v2 .is-unnecessary > * {
    background-color: #ddd;
    color: #000;
  }
  .link-button-v2 .is-closed > * {
    background-color: #666;
  }
  .link-button-v2 > li > .is-disabled {
    background-color: #e6e4e2!important;
    pointer-events: none!important;
  }
  
  /* icon */
  .link-button-v2 > li > a::after {
    display: none;
  }
  .link-button-v2 > li > a > .link_label::after {
    display: inline-block;
    width: 9px;
    height: 14px;
    vertical-align: top;
    margin: .4em 0 0 10px;
    background: url(/common/img/com_sprite01.png) no-repeat -200px -100px;
    content: "";
  }
  .link-button-v2 > li > .a-blank > .link_label::after {
    width: 12px;
    height: 12px;
    margin: .4em 0 0 10px;
    background-position: -300px -100px;
  }
  
  /* ----- link-button-v3 ----- */
  .link-button-v3 {
    margin: 30px 0;
  }
  .link-button-v3 a {
    display: inline-block;
    min-width: 167px;
    padding: 16px 10px 15px;
    border: 1px solid #bbb;
    color: #000;
    font-weight: bold;
    text-decoration: none;
  }
  .link-button-v3 .link_label {
    display: inline-block;
    position: relative;
    padding-left: 16px;
  }
  .link-button-v3 .link_label::before {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
    vertical-align: top;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    border-top: 1px solid #d13;
    border-right: 1px solid #d13;
    content: "";
    
  }
  
  /* ------------------------------------------------------
   * Elements >>> Image
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .image-set {
    margin: 30px 0;
  }
  .image-set .image_caption {
    margin-top: 10px;
    font-size: 1.4rem;
    text-align: left;
  }
  
  /* gp-al-** */
  .image-set.gp-al-center {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .image-set.gp-al-right {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  
  /* ------------------------------------------------------
   * Elements >>> Other
  ------------------------------------------------------ */
  /* ----- line-layout ----- */
  .line-layout {
    margin: 2em 0;
  }
  .line-layout .line_hr {
    display: block;
    height: 1px;
    margin: 0;
    border-top: 1px solid #ccc;
  }
  
  /* ----- text ----- */
  .gp-tx-small{font-size:12px!important;font-size:1.2rem!important;}
  .gp-tx-small_v2{font-size:12px!important;font-size:1.2rem!important;}
  .gp-tx-middle{font-size:20px!important;font-size:2.0rem!important;}
  .gp-tx-middle_v2{font-size:17px!important;font-size:1.7rem!important;}
  .gp-tx-large{font-size:24px!important;font-size:2.4rem!important;}
  
  /* ----- station_wrap ----- */
  .station_wrap .station_search .station_heading .station_head {
    float: left;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .station_wrap .station_search .station_heading .station_head span {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
  }
  .station_wrap .station_search .station_heading .list-note {
    float: right;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .station_wrap .station_search .station_contents .station_filter {
    display: none;
  }

  /* ------------------------------------------------------
   * Conditional Elements >>> Heading
  ------------------------------------------------------ */
  /* ----- heading-lv1 ----- */
  .heading-lv1 {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
    position: relative;
    min-height: 103px;
    margin: 30px -30px;
    padding: 10px 30px;
    border-top: 3px solid #d13;
    background-color: #666;
    color: #fff;
  }
  .heading-lv1 + * {
    margin-top: 30px !important;
  }
  .heading-lv1 + .navi-anchor {
    margin-top: -30px !important;
  }
  .heading-lv1 .heading_title {
    width: 100%;
    font-size: 2.4rem;
    line-height: 1.4;
  }
  .heading-lv1 .heading_utility {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    top: 0;
    right: 30px;
    bottom: 0;
  }
  .heading-lv1 .heading_utility > * {
    margin: 0;
  }
  .heading-lv1 .heading_utility .link-button-v2 > li {
    background-color: #fff;
  }
  .heading-lv1 .heading_utility .link-button-v2 > li > a {
    padding: 9px 40px 7px 20px;
  }
  .heading-lv1 .heading_utility .link-button-v2 > li > .a-blank .link_label {
    line-height: 1.5;
  }
  .heading-lv1 .heading_utility .link-button-v2 > li > .a-blank .link_label::after {
    position: absolute;
    top: 50%;
    right: 19px;
    margin: -6px 0 0;
  }
  .heading-lv1 > .heading_title > .heading_caption {
    font-size: 16px;
    font-size: 1.6rem;
  }
  
  /* i-category */
  .heading-lv1 .i-category {
    margin-bottom: .5em;
    padding: 4px 19px 3px;
    color: #fff;
    text-align: center;
  }
  
  /* type-search */
  .heading-lv1.type-search {
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row;
    flex-direction: row;
  }
  .heading-lv1.type-search .search_tourists_btn {
    min-width: 254px;
  }
  .heading-lv1.type-search .search_tourists_btn > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 8px 27px;
    background-color: #fff;
    color: #000;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  .heading-lv1.type-search .search_tourists_btn > a > span {
    position: relative;
    padding-left: 64px;
  }
  .heading-lv1.type-search .search_tourists_btn > a > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 54px;
    height: 32px;
    margin-top: -16px;
    background: url("/common/img/gnav_ic12.png") no-repeat 0 0;
  }
  
  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    margin: 30px 0;
    border-left: 3px solid #d13;
  }
  .heading-lv2 + section > .heading-lv3 {
    margin-top: 30px;
  }
  .heading-lv2 .block {
    display: block;
    padding: 8px 0 4px 15px;
  }
  .heading-lv2 .heading_title {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.3;
  }
  /* ----- heading-lv2-v2 ----- */
  .heading-lv2-v2 {
    margin: 30px auto;
    text-align: center;
  }
  .heading-lv2-v2 + section > .heading-lv3 {
    margin-top: 30px;
  }
  .heading-lv2-v2 .block {
    display: inline-block;
    padding: 0 20px;
    border-left: 4px solid #d13;
    border-right: 4px solid #d13;
  }
  .heading-lv2-v2 .heading_title {
    font-size: 2.6rem;
    font-weight: bold;
    line-height: 1.3;
    color: #fff;
    text-shadow: -1px -1px 0 #b10011,-1px 0 0 #b10011,-1px 1px 0 #b10011,0 -1px 0 #b10011,0 1px 0 #b10011,1px -1px 0 #b10011,1px 0 0 #b10011,1px 1px 0 #b10011;
  }
  /* ----- heading-lv2-v3 ----- */
  .heading-lv2-v3 {
    margin: 60px 0 30px;
    border-left: 3px solid #d13;
  }
  .heading-lv2-v3 .block {
    display: block;
    padding: 3px 0 1px 15px;
  }
  .heading-lv2-v3 .heading_title {
    font-size: 2rem;
    font-weight: normal;
  }
  
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    margin: 50px 0 10px;
  }
  .heading-lv3 + *,
  .heading-lv3 + section > [class*="heading-lv"] {
    margin-top: 10px !important;
  }
  .heading-lv3 .block {
    display: block;
    padding-bottom: 6px;
    border-bottom: 1px solid #ccc;
    color: #333;
  }
  .heading-lv3 .heading_title {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .heading-lv3 a.block .heading_title::after {
    display: inline-block;
    width: 6px;
    height: 8px;
    vertical-align: top;
    margin: .5em 0 0 10px;
    background: url(/common/img/com_sprite01.png) no-repeat -9px -154px;
    content: "";
  }
  .heading-lv3 a.a-blank .heading_title::after {
    width: 14px;
    height: 12px;
    margin-top: .4em;
    background: url(/common/img/com_sprite01.png) no-repeat -8px -181px;
  }
  .heading-lv3 a.a-pdf .heading_title::after {
    width: 13px;
    height: 15px;
    margin-top: .3em;
    background: url(/common/img/com_sprite01.png) no-repeat -65px -181px;
  }
	.heading-lv3 a.a-xls .heading_title::after {
    width: 13px;
    height: 15px;
    margin-top: .3em;
    background: url(/common/img/com_sprite01.png) no-repeat -124px -181px;
  }
  .heading-lv3 .heading_title.status_icon_title {
    overflow: hidden;
    display: inline;
    line-height: 1.9;
  }
  .heading-lv3 .status-icon {
    margin-right: 10px;
    display: inline-block;
  }
  
  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 20px 0 0;
  }
  .heading-lv4 + * {
    margin-top: 10px !important;
  }
  .heading-lv4 .heading_title {
    position: relative;
    padding-left: 16px;
    font-weight: bold;
  }
  .heading-lv4 .heading_title::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #d13;
    content: "";
  }
  /* ----- heading-lv4-v2 ----- */
  .heading-lv4-v2 {
    margin: 1.5em 0 1em;
  }
  .heading-lv4-v2 .heading_title {
    position: relative;
    padding-left: 16px;
    font-weight: bold;
  }
  .heading-lv4-v2 .heading_title::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #d13;
    content: "";
  }
  
  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 40px 0 20px;
  }
  .heading-lv5 .heading_title {
    position: relative;
    padding-left: 26px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.55;
  }
  .heading-lv5 .heading_title::before {
    position: absolute;
    top: .45em;
    left: 0;
    width: 10px;
    height: 10px;
    border: 2px solid #555;
    content: "";
  }
  
  .column_item > section > [class^="heading-"],
  [data-row-pc="2"] .column_item > section:first-child > [class^="heading-"],
  [data-row-pc="3"] .column_item > section:first-child > [class^="heading-"],
  [data-row-pc="4"] .column_item > section:first-child > [class^="heading-"],
  .column_detail > section > [class^="heading-"] {
    margin-top: 0;
  }
  [data-row-pc="2"] .column_item > section > [class^="heading-"],
  [data-row-pc="3"] .column_item > section > [class^="heading-"],
  [data-row-pc="4"] .column_item > section > [class^="heading-"] {
    margin-top: 15px;
  }
  
  /* ------------------------------------------------------
   * Conditional Elements >>> Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    margin: 30px -30px;
    padding: 10px 30px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  .navi-anchor .navi-inner {
    -webkit-display: flex;
    display: flex;
  }
  .navi-anchor .navi-inner[data-row-pc="1"] {
    display: block;
  }
  .navi-anchor .navi-inner > li {
    position: relative;
    margin: 5px 18px 5px 0;
    padding-right: 18px;
  }
  .navi-anchor.is-month .navi-inner > li {
    margin: 5px 5px 5px 0;
    padding-right: 12px;
  }
  .navi-anchor .navi-inner[data-row-pc="1"] > li {
    margin-right: 0;
    padding-right: 0;
  }
  .navi-anchor .navi-inner[data-row-pc="2"] > li {
    width: calc((100% - 36px) / 2);
  }
  .navi-anchor .navi-inner[data-row-pc="3"] > li {
    width: calc((100% - 56px) / 3);
  }
  .navi-anchor .navi-inner[data-row-pc="4"] > li {
    width: calc((100% - 84px) / 4);
  }
  .navi-anchor .navi-inner[data-row-pc="5"] > li {
    width: calc((100% - 90px) / 5);
  }
  .navi-anchor .navi-inner > li::before {
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd;
    content: "";
  }
  .navi-anchor .navi-inner[data-row-pc="1"] > li::before,
  .navi-anchor .navi-inner[data-row-pc="2"] > li:nth-child(2n)::before,
  .navi-anchor .navi-inner[data-row-pc="3"] > li:nth-child(3n)::before,
  .navi-anchor .navi-inner[data-row-pc="4"] > li:nth-child(4n)::before,
  .navi-anchor .navi-inner[data-row-pc="5"] > li:nth-child(5n)::before {
    display: none;
  }
  .navi-anchor .navi-inner > li:last-child::before {
    display: none;
  }
  .navi-anchor .navi-inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 19px;
  }
  .navi-anchor .navi-inner > li > a::before {
    position: absolute;
    top: .4em;
    left: 2px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    width: 7px;
    height: 7px;
    border-left: 2px solid #d13;
    border-bottom: 2px solid #d13;
    content: "";
  }
  .navi-anchor .navi-panel {
    background-color: #f6f4f2;
    padding: 17px 30px;
  }
  .navi-anchor .navi-panel .navi-panel-inner {
    margin: 0 -10px
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .navi-anchor .navi-panel li {
    position: relative;
    padding: 0 15px;
    width: 33%;
  }
  .navi-anchor .navi-panel li:nth-of-type(n+4) {
    margin-top: 15px;
  }
  .navi-anchor .navi-panel li::before {
    position: absolute;
    content: "";
    top: 9px;
    left: 0;
    width: 5px;
    height: 5px;
    background-color: #858585;
  }
  
  /* ----- navi-anchor-v2 ----- */
  .navi-anchor-v2 {
    margin: 30px 0;
  }
  .navi-anchor-v2 .navi-inner > li > a {
    display: inline-block;
    position: relative;
    padding-left: 19px;
  }
  .navi-anchor-v2 .navi-inner > li > a::before {
    position: absolute;
    top: .4em;
    left: 2px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    width: 7px;
    height: 7px;
    border-left: 2px solid #d13;
    border-bottom: 2px solid #d13;
    content: "";
  }
  
  /* ----- navi-sort ----- */
  .navi-sort {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin: 30px 0;
    padding: 20px;
    background-color: #e6e4e2;
  }
  .navi-sort .navi_title {
    margin-right: 10px;
    font-weight: bold;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Table
  ------------------------------------------------------ */
  /* ----- table-layout ----- */
  .table-layout {
    margin: 30px 0;
  }
  .table-layout .table_inner {
    width: 100%;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
  }
  .table-layout caption .table_title > span {
    padding: 0 10px;
    border-bottom: 1px solid #dd1133;
  }
  .table-layout caption .table_title + .table_caption {
    margin: 15px 0;
  }
  .table-layout th,
  .table-layout td {
    vertical-align: top;
    padding: 10px;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    background-color: #fff;
    font-weight: normal;
    text-align: left;
  }
  .table-layout thead th {
    vertical-align: middle;
    text-align: center;
  }
  .table-layout th > *:first-child,
  .table-layout td > *:first-child {
    margin-top: 0 !important;
  }
  .table-layout th > *:last-child,
  .table-layout td > *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout .cell-style1 {
    background-color: #858585;
    color: #fff;
  }
  .table-layout .cell-style2 {
    background-color: #e6e4e2;
  }
  .table-layout .cell-style3 {
    background-color: #4aaeb7;
    color: #fff;
  }
  .table-layout .cell-style4 {
    background-color: #c67180;
    color: #fff;
  }
  .table-layout .cell-style5 {
    background-color: #eefeff;
  }
  .table-layout .cell-style6 {
    background-color: #ffeef1;
  }
  .table-layout .cell-space-0 {
    padding-right: 0;
    padding-left: 0;
    text-align: center;
    letter-spacing: -.04em;
  }
  .table-layout [class*="cell-"] .cell_strong {
    margin-top: 6px !important;
    padding: 11px 5px;
    background-color: #d13;
    color: #fff;
  }
  .table-layout.table-small th,
  .table-layout.table-small td {
    padding: 4px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .table-layout .table_left {
    float: left;
    overflow: hidden;
    width: 20%;
  }
  .table-layout .table_right {
    float: left;
    width: 80%;
  }
  .table-layout .table_left .table_inner {
    border-right: none;
  }
  .table-layout .two-line {
    height: 69px;
  }
  .table-layout .text-discount {
    margin-right: -.5em;
    margin-left: -.5em;
  }
  .table-layout.table-small .two-line {
    height: 50px;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Column
  ------------------------------------------------------ */
  .column_item > *:first-child {
    margin-top: 0 !important;
  }
  .column_item > *:last-child {
    margin-bottom: 0 !important;
  }
  
  /* ----- column-layout ----- */
  .column-layout {
    margin: 30px 0;
  }
  .column-layout > .column_item {
    margin-top: 30px;
  }
  .column-layout .image-set {
    margin-top: 0 !important;
  }
  
  /* ----- column-layout-v2 ----- */
  .column-layout-v2 > .column_item {
    margin: 4px 0 0 4px;
    padding: 30px;
    background-color: #f6f4f2;
  }
  .column-layout-v2 .column_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
  }
  .column-layout-v2 .column_heading + * {
    margin-top: 15px;
  }
  .column-layout-v2 .column_title {
    position: relative;
    padding-left: 60px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .column-layout-v2 .column_title::before {
    position: absolute;
    top: 50%;
    left: 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
    -webkit-background-size: 250px auto;
    background-size: 250px auto;
    content: "";
  }
  .column-layout-v2 .column_title.type1::before {
    width: 41px;
    height: 34px;
    margin-top: -17px;
    background-position: -100px 0;
  }
  .column-layout-v2 .column_title.type2::before {
    width: 44px;
    height: 29px;
    margin-top: -16px;
    background-position: -150px 0;
  }
  .column-layout-v2[data-row-pc="2"] > .column_item {
    width: calc((100% - 4px) / 2);
  }
  
  /* ----- column-media ----- */
  .column-media {
    margin: 30px 0;
  }
  .column-media > .column_image > *:first-child,
  .column-media > .column_detail > *:first-child {
    margin-top: 0 !important;
  }
  .column-media .image-set {
    margin-bottom: 0;
  }
  .column-media [class*="link-"],
  .column-media [class*="box-"],
  .list-icon + .column-media {
    margin: 20px 0;
  }
  
  /* data-media-size */
  .column-media[data-media-size="1/2"] > .column_image {
    width: calc((100% - 28px) / 2);
  }
  .column-media[data-media-size="1/3"] > .column_image {
    width: calc((100% - 56px) / 3);
  }
  .column-media[data-media-size="1/4"] > .column_image {
    width: calc((100% - 84px) / 4);
  }
  .column-media[data-media-size="3"] > .column_image > .column-layout[data-row-pc="2"] > .column_item > .image-set > .image_inner {
    width: 228px;
  }
  [data-sidebar="false"] .column-media[data-media-size="3"] > .column_image > .column-layout[data-row-pc="2"] > .column_item > .image-set > .image_inner {
    width: 328px;
  }
  
  /* data-image */
  .column-media > .column_image[data-image="right"] {
    float: right;
    margin-left: 28px;
  }
  .column-media > .column_image[data-image="left"] {
    float: left;
    margin-right: 28px;
  }
  
  /* data-wraparound */
  .column-media > .column_detail[data-wraparound="false"] {
    overflow: hidden;
  }
  .column-media .sub_column_image {
    display: -webkit-flex;
    display: flex;
    flex-flow: row wrap;
    margin-top: 12px;
    justify-content: space-between;
  }
  .column-media .sub_column_image .sub_column_item {
    width: 158px;
  }
  
  /* ----- column-button ----- */
  [class*="column-button"] {
    -webkit-align-items: center;
    align-items: center;
    margin: 20px 0;
  }
  .column-button {
    -webkit-justify-content: center;
    justify-content: center;
  }
  [class*="column-button"] > .column_item {
    width: 242px;
    margin-left: 0;
    padding: 0 14px;
  }
  [class*="column-button"] [class*="link-button"] {
    margin: 0;
  }
  [class*="column-button"] [class*="link-button"] > li > * {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
  }
  .button-w01-type > .column_item {
    width: calc((100% - 28px) / 2);
  }
  /* ----- column-flow ----- */
  .column-flow {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    margin: 30px 0;
  }
  .column-flow .column_item {
    position: relative;
  }
  .flow-title {
    margin-top: 25px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .column-flow .column_item .flow-title:first-child {
    margin-top: 0;
  }
  .column-flow[data-row-pc="2"] .column_item {
    width: calc((100% - 60px) / 2);
    margin-left: 60px;
  }
  .column-flow[data-row-pc="2"] .column_item:nth-child(2n+1)::after {
    position: absolute;
    top: 50%;
    right: -53px;
    width: 0;
    height: 0;
    margin-top: -14px;
    border-width: 14px 15px 14px 15px;
    border-style: solid;
    border-color: transparent transparent transparent #858585;
    content: "";
  }
  .column-flow-layout .column-flow[data-row-pc="2"] .column_item:nth-child(2) {
    margin-top: 47px !important;
  }
  .column-flow .column_item .link-text {
    margin-bottom: 0;
  }
  
  /* ----- column-index ----- */
  .column-index {
    margin: 60px 0;
  }
  .column-index .column_item {
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
  }
	.column-index .column_item.column_vertical-item {
    display: block!important;
  }
  .column-index .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    width: 100%;
    color: #fff;
    text-decoration: none;
  }
  .column-index .column_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    min-height: 60px;
    padding: 7px 20px 5px;
    background-color: #858585;
  }
  .column-index .column_title {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.2;
  }
  .column-index .column_title.type2 {
    font-size: 1.6rem;
  }
  .column-index .column_title::after {
    display: inline-block;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    width: 9px;
    height: 9px;
    vertical-align: top;
    margin: .3em 0 0 7px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: "";
  }
  .column-index .a-blank::after,
  .column-index .a-pdf::after,
	.column-index .a-xls::after{
    display: none;
  }
  .column-index .a-blank .column_title::after,
  .column-index .a-pdf .column_title::after,
	.column-index .a-xls .column_title::after{
    -webkit-transform: none;
    transform: none;
    vertical-align: top;
    border: none;
    content: "";
  }
  .column-index .a-blank .column_title::after {
    width: 17px;
    height: 17px;
    margin: .3em 0 0 7px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -300px -100px;
  }
  .column-index .a-pdf .column_title::after {
    width: 14px;
    height: 16px;
    margin: .2em 0 0 7px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -64px -180px;
  }
	.column-index .a-xls .column_title::after {
    width: 14px;
    height: 16px;
    margin: .2em 0 0 7px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -124px -180px;
  }
  .column-index .column_detail {
    min-height: 0%;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
    padding: 15px 19px;
    border: 2px solid #ccc;
    border-top: none;
    color: #333;
  }
  .column-index .column_detail > *:first-child {
    margin-top: 0 !important;
  }
  .column-index .column_detail > *:last-child {
    margin-bottom: 0 !important;
  }
  .column-index .column_detail .image-set img {
    height: auto;
    width: 100%;
  }
  .column-index .column_detail .image-set.gp-al-center .image_inner {
    width: 100%;
  }
  .column-index .column_detail.type2 {
    height: 80px;
  }
  .column-index a:hover {
    opacity: .6;
  }
  
  /* ----- column-index-v2 ----- */
  .column-index-v2 {
    margin: 30px 0;
  }
  .column-index-v2 .column_item {
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
  }
  .column-index-v2 .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    width: 100%;
    color: #fff;
    text-decoration: none;
  }
  .column-index-v2 .column_image .image-set {
    margin: 0;
  }
  .column-index-v2 .column_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    min-height: 56px;
    padding: 7px 20px 5px;
    background-color: #525252;
  }
  .column-index-v2 .column_title {
    position: relative;
    padding-left: 15px;
    font-weight: bold;
  }
  .column-index-v2 .column_title::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 5px;
    height: 8px;
    margin-top: -4px;
    background: url(/common/img/com_sprite01.png) no-repeat -9px -107px;
    content: "";
  }
  .column-index-v2 .column_image.type-frame {
    padding: 15px 19px;
    border: 2px solid #ccc;
    border-top: none;
  }
  .column-index-v2 a:hover {
    opacity: .8;
  }
  /* ----- column-box ----- */
  .column-box {
    display: flex;
    margin-top: 30px;
  }
  .column-box .column_boxText {
    font-size: 1.6rem;
    font-weight: bold;
    border: 1px solid #ccc;
    text-align: center;
    width: 260px;
    background: #f6f4f2;
    color: #b10011;
  }
  .column-box .column_boxText > ul > li {
    padding: 10px;
    border-top: 1px solid #ccc;
  }
  .column-box .column_boxText > ul > li:first-child {
    border-top: 0;
  }
  .column-box .column_detail {
    margin-left: 28px;
    width: 452px;
  }
  
  
  /* ----- ind-layout ----- */
  .ind-layout .link-block {
    position: relative;
  }
  .ind-layout .link-block > a.block {
    display: block;
  }
  .ind-layout .link-block > a .link-caption {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 20px 30px;
    background-color: rgba(51,51,51,0.8);
    font-weight: bold;
    color: #fff;
  }
  .ind-layout .link-block > a:hover {
    opacity: 0.7;
  }
  .ind-layout .link-block > a .link-caption > p::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 10px;
    margin: .3em 10px 0 0;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -8px -106px;
  }
  .ind-layout .link-block > a:hover .link-caption > p {
    text-decoration: underline;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Box
  ------------------------------------------------------ */
  .contents > section + [class*="box-layout"] {
    margin-top: 60px;
  }
  .box_detail > *:first-child {
    margin-top: 0 !important;
  }
  .box_detail > *:last-child {
    margin-bottom: 0 !important;
  }
  .box_detail .link-text[data-row-pc="auto"] {
    margin-right: 0;
  }
  
  /* ----- box-layout ----- */
  .box-layout {
    position: relative;
    margin: 30px 0;
    border: 2px solid #ccc;
    background-color: #fff;
  }
  .box-layout::before {
    position: absolute;
    top: -2px;
    left: -2px;
    width: calc(100% + 4px);
    height: 3px;
    background-color: #d13;
    content: "";
  }
  .box-layout .box_title {
    padding: 10px 0 9px;
    background-color: #f6f4f2;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
  }
  .box-layout .box_detail {
    padding: 20px;
  }
  .box-layout .box_aside {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #ccc;
  }
  .box-layout .box_aside .link-text[data-row-pc="auto"] {
    margin: -5px 0 0;
  }
  .box-layout .box_aside .link-text[data-row-pc="auto"] > li {
    margin-right: 0;
    padding: 5px 20px 0;
  }
  [data-sidebar="false"] .box-layout {
    max-width: 740px;
    margin: 60px auto 30px;
  }
  
  /* ----- box-layout-v2 ----- */
  .box-layout-v2 {
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
    border: 2px solid #ccc;
  }
  .box-layout-v2 + .list-note {
    margin-top: .5em;
  }
  .box-layout-v2 .box_title {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-flow: column;
    flex-flow: column;
    padding: 17px 20px;
    background-color: #ffeef1;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
  }
  .box-layout-v2 .box_title + .box_detail {
    padding: 20px;
  }
  .box-layout-v2 .box_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    padding: 27px 28px;
  }
  .box-layout-v2 .box_detail.detail_center {
    padding-right: 20%;
    padding-left: 20%;
  }
  .box-layout-v2 .text-paragraph,
  .box-layout-v2 [class*="link-text"] {
    margin-top: 10px !important;
  }
  .box-layout-v2 [class*="link-button"] {
    margin-top: 15px !important;
  }
  .box-layout-v2 .link-text[data-row-pc="auto"] > li {
    margin-right: 30px;
  }
  .box-layout-v2[data-layout-pc="col"] {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .box-layout-v2[data-layout-pc="col"] .box_title,
  .box-layout-v2[data-layout-pc="col"] .box_detail {
    width: 100%;
  }
  .box-layout-v2[data-layout-pc="row"] .box_title {
    width: 24.18%;
  }
  .column-layout .box-layout-v2 .box_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex: 1;
    flex: 1;
  }
  .column-layout .box-layout-v2 .navi-anchor-v2 {
    margin-top: 3em;
  }
  .column-layout .box-layout-v2[data-layout-pc="row"] .box_title {
    width: 31.82%;
  }
  
  /* ----- box-layout-v3 ----- */
  .box-layout-v3 {
    margin: 30px 0;
    background-color: #ffeef1;
  }
  .box-layout-v3 .box_detail {
    padding: 20px;
  }
  .box-layout-v3 .text-paragraph,
  .box-layout-v3 [class*="list-note"] {
    margin-top: 10px !important;
  }
  
  /* ----- box-layout-v4 ----- */
  .box-layout-v4 {
    margin: 30px 0;
  }
  .box-layout-v4 > .box_title {
    padding: 7px 20px 4px;
    background-color: #d13;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
  }
  .box-layout-v4 > .box_detail {
    padding: 19px;
    border: 1px solid #ccc;
  }
	.box-layout-v4 > .box_detail.box_detailType02{
		padding: 19px 129px;
	}
  .box-layout-v4.as-ex-orange > .box_detail {
    border: 1px solid #f0931c;
  }
  .column_item > .box-layout-v4 {
    margin: 20px 0 0;
  }
  .column_item > .box-layout-v4 + .list-note {
    margin-top: .5em;
  }
  
  /* ----- box-layout-v5 ----- */
  .box-layout-v5 {
    margin: 30px 0;
  }
  .box-layout-v5 > .box_title {
    padding: 16px 20px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
  }
  .box-layout-v5 > .box_title > .f-small {
    font-size: 1.4rem;
    font-weight: normal;
  }
  .box-layout-v5 > .box_detail {
    padding: 27px 30px;
    background-color: #f6f4f2;
  }
  .box-layout-v5 > .box_detail > .link-text {
    margin-top: .5em;
  }
  .column_item .box-layout-v5 {
    margin: 20px 0 0;
  }
  .box-layout-v4 .box-layout-v5 > .box_detail {
    padding: 15px 20px;
  }
  
  /* ----- box-layout-v6 ----- */
  .box-layout-v6 {
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
    border: 2px solid #ccc;
  }
  .box-layout-v6 + .list-note {
    margin-top: .5em;
  }
  .box-layout-v6 .box_title > a {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    padding: 17px 20px;
    background-color: #ffeef1;
    font-size: 1.6rem;
    font-weight: bold;
    color: #333;
    line-height: 1.5;
  }
  .box-layout-v6 .box_title > a:after {
    position: absolute;
    content: "";
    top: 50%;
    right: 14px;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    background: url(/common/img/com_sprite01.png) no-repeat -9px -154px;
  }
  .box-layout-v6 .box_title + .box_detail {
    padding: 20px;
  }
  .box-layout-v6 .box_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-flex: 1;
    flex: 1;
    padding: 27px 28px;
  }
  .box-layout-v6 .text-paragraph,
  .box-layout-v6 [class*="link-text"] {
    margin-top: 10px !important;
  }
  .box-layout-v6 [class*="link-button"] {
    margin-top: 15px !important;
  }
  .box-layout-v6 .link-text[data-row-pc="auto"] > li {
    margin-right: 30px;
  }
  .box-layout-v6[data-layout-pc="col"] {
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
  }
  .box-layout-v6[data-layout-pc="row"] .box_title {
    width: 32.40%;
  }
  .box-layout-v6 .box_detail [class*="heading"]:first-child {
    margin-top: 0 !important;
  }
  
  /* ----- box-layout-v7 ----- */
  .box-layout-v7 {
    display: -webkit-flex;
    display: flex;
    margin-top: 30px;
    border: 2px solid #ccc;
  }
  .box-layout-v7 .box_title {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-flow: column;
    flex-flow: column;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
  }
  .box-layout-v7 > a{
    padding: 17px 20px 20px;
    display: block;
    width: 100%;
    color: #333;
  }
  .box-layout-v7 > a:hover{
    opacity: .6;
    text-decoration: none;
  }
  .box-layout-v7 .box_title > span{
    border-bottom: solid 1px #ccc;
    padding-bottom: 17px;
    display: block;
    width: 100%;
  }
  .box-layout-v7 .box_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    padding-top: 20px;
  }
  .box-layout-v7[data-layout-pc="col"] {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .box-layout-v7[data-layout-pc="col"] .box_title,
  .box-layout-v7[data-layout-pc="col"] .box_detail {
    width: 100%;
  }
  .column-layout .box-layout-v7 .box_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex: 1;
    flex: 1;
  }
  /* ----- box-layout-v8 ----- */
  .box-layout-v8 {
    margin-top: 30px;
    background-color: #fef8f4;
    font-size: 1.6rem;
    padding: 20px;
  }
  /* ----- box-layout-v9 ----- */
  .box-layout-v9 {
    margin: 30px 0;
  }
  .box-layout-v9 > .box_title {
    padding: 7px 20px 4px;
    background-color: #d13;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .box-layout-v9 > .box_detail {
    padding: 19px;
    background-color: #fef8f4;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .column_item > .box-layout-v9 {
    margin: 20px 0 0;
  }
  .column_item > .box-layout-v9 + .list-note {
    margin-top: .5em;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Other
  ------------------------------------------------------ */
  /* ----- accordion-layout ----- */
  .accordion-layout {
    margin-top: 50px;
  }
  .accordion-layout > .accordion_trigger {
    position: relative;
    padding: 8px 73px 6px 0;
    background-color: #fff;
    border-bottom: 1px solid #ccc;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5;
    cursor: pointer;
  }
  .accordion-layout > .accordion_detail {
    padding: 20px 0;
    background-color: #fff;
  }
  
  /* icon */
  .accordion-layout > .accordion_trigger::before,
  .accordion-layout > .accordion_trigger::after {
    position: absolute;
    top: 50%;
    right: 33px;
    width: 16px;
    height: 2px;
    margin-top: -1px;
    background-color: #d13;
    content: "";
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .accordion-layout > .accordion_trigger::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout > .accordion_trigger.is-active::before {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  
  /* ----- sp-accordion-layout ----- */
  .sp-accordion-layout .sp-accordion_trigger {
    display: none;
  }
  
  /* ----- tab-layout ----- */
  .tab-layout {
    margin: 60px 0;
  }
  .tab-layout > .tab_navi {
    overflow: hidden;
  }
  .tab-layout .tab_list {
    -webkit-display: flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: 0 -2px;
    border-bottom: 1px solid #ccc;
  }
  .tab-layout .tab_list > li {
    -webkit-display: flex;
    display: flex;
    width: 160px;
    padding: 4px 2px 0;
  }
  .tab-layout .tab_list > li > a {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 10px 5px 7px;
    border: 1px solid #e6e4e2;
    border-bottom: none;
    background-color: #e6e4e2;
    font-size: 1.6rem;
    font-weight: bold;
    text-decoration: none;
    -webkit-transition: none;
    transition: none;
  }
  .tab-layout .tab_list > .is-current {
    padding-top: 0;
  }
  .tab-layout .tab_list > .is-current > a {
    padding-top: 14px;
    border-color: #ccc;
    background-color: #fff;
    color: #999;
  }
  .tab-layout .tab_list > .is-current > a::before {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: 3px;
    background-color: #d13;
    content: "";
  }
  .tab-layout .tab_list > .is-current > a::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .tab-layout > .tab_detail {
    display: none;
    padding-top: 30px;
  }
  .tab-layout > .tab_detail > *:first-child,
  .tab-layout > .tab_detail > *:first-child > [class*="heading-"]:first-of-type {
    margin-top: 0 !important;
  }
  
   /* ----- tab-layout-v2 ----- */
   .tab-layout-v2 {
    margin: 60px 0 30px;
  }
  .tab-layout-v2 > .tab_navi {
    overflow: hidden;
  }
  .tab-layout-v2 .tab_list {
    -webkit-display: flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 -2px;
    border-bottom: 1px solid #ccc;
  }
  .tab-layout-v2 .tab_list > li {
    -webkit-display: flex;
    display: flex;
    width: 160px;
    padding: 4px 0 0;
  }
  .tab-layout-v2 .tab_list > li > a {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 10px 34px 7px;
    border: 1px solid #e6e4e2;
    border-bottom: none;
    background-color: #e6e4e2;
    font-size: 1.6rem;
    font-weight: bold;
    text-decoration: none;
    -webkit-transition: none;
    transition: none;
  }
  .tab-layout-v2 .tab_list > .is-current {
    padding: 0 2px;
  }
  .tab-layout-v2 .tab_list > .is-current > a {
    padding-top: 14px;
    border-color: #ccc;
    background-color: #fff;
    color: #999;
  }
  .tab-layout-v2 .tab_list > .is-current > a::before {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: 3px;
    background-color: #d13;
    content: "";
  }
  .tab-layout-v2 .tab_list > .is-current > a::after {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    content: "";
  }
  .tab-layout-v2 > .tab_detail {
    display: none;
    padding-top: 30px;
  }
  .tab-layout-v2 > .tab_detail > *:first-child,
  .tab-layout-v2 > .tab_detail > *:first-child > [class*="heading-"]:first-of-type {
    margin-top: 0 !important;
  }
  .tab-layout-v2 .tab_list[data-row-pc="auto"] > li {
    width: auto;
    margin-left: 0;
  }
  
  /* ----- modal ----- */
  .zoom-image > a,
  .modal-set > a {
    position: relative;
    display: block;
  }
  .zoom-image > a > .zoom_text,
  .modal-set > a > .zoom_text {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 78px;
    padding: 14px 10px 12px 35px;
    background-color: #dd1133;
    line-height: 1.28;
    color: #fff;
  }
  .zoom-image > a > .zoom_text:before,
  .modal-set > a > .zoom_text:before {
    position: absolute;
    content: "";
    top: 50%;
    left: 14px;
    width: 14px;
    height: 14px;
    margin-top: -7px;
    background: url(/common/img/com_sprite01.png) no-repeat -10px -360px;
  }
  .zoom-image {
    margin-top: 60px;
  }

  /* ----- modal ----- */
  .modal-inline #cboxContent,
  .modal-youtube #cboxContent,
  .modal-iframe #cboxContent{
    margin-top: 40px;
    background: none;
  }
  .modal-inline #cboxLoadedContent,
  .modal-youtube #cboxLoadedContent,
  .modal-iframe #cboxLoadedContent {
    padding: 40px;
    border: none;
  }
  .modal-inline #cboxContent #cboxClose,
  .modal-youtube #cboxContent #cboxClose,
  .modal-iframe #cboxContent #cboxClose {
    display: block;
    position: absolute;
    top: -40px;
    right: 0;
    width: 40px;
    height: 40px;
    background: #333;
  }
  .modal-inline #cboxContent #cboxClose:before,
  .modal-youtube #cboxContent #cboxClose:before,
  .modal-iframe #cboxContent #cboxClose:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 17px;
    height: 17px;
    margin: -9px 0 0 -8px;
    background: url(/common/img/com_sprite01.png) no-repeat -140px -268px;
  }
  #cboxOverlay {
    opacity: 0.5 !important;
  }
  .modal-inlines {
    display: none;
  }
    /* ----- modal-youtube ----- */
  .modal-youtube #cboxContent {
    margin-top: 40px;
    background: none;
  }
  .modal-youtube #cboxLoadedContent {
    padding: 40px;
    border: none;
  }
  .modal-youtube #cboxContent #cboxClose {
    display: block;
    position: absolute;
    top: -40px;
    right: 0;
    width: 40px;
    height: 40px;
    background: #333;
  }
  .modal-youtube #cboxContent #cboxClose:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 17px;
    height: 17px;
    margin: -9px 0 0 -8px;
    background: url(/common/img/com_sprite01.png) no-repeat -140px -268px;
  }
  
  /* ------------------------------------------------------
   * Components
  ------------------------------------------------------ */
  /* ----- news-layout ----- */
  .news-layout {
    margin: 30px 0;
  }
  .news-layout .news_article + .news_article {
    margin-top: 2em;
  }
  .news-layout .block {
    color: #666;
    text-decoration: none;
  }
  .news-layout .news_detail {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  .news-layout .news_property {
    width: 136px;
    margin-right: 10px;
  }
	.news-layout .news_heading {
		-webkit-flex: 1;
		flex: 1;
	}
  .news-layout a .news_title {
    color: #3390d1;
  }
  .news-layout a:hover .news_title {
    text-decoration: underline;
  }
  
  /* charter-news */
  .charter-news .news_detail .news_property {
  width: 35.2%;
  margin: 0 34px 0 0;
}
.charter-news .news_detail .news_property .news_date {
  float: left;
  
  color: #666;
}
.charter-news .news_detail .news_txt {
  flex: 1;
}
.charter-news .news_icon {
  float: right;
  display: inline-block;
  width: 109px;
  padding: 2px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #fffefe;
  text-align: center;
}
.charter-news .news_icon.type1 {
  background-color: #99aaaf;
}

.charter-news .news_icon.type4 {
  background-color: #33a8d8;
}

.charter-news + .link-button {
  margin-top: 34px;
}
.charter-news + .link-button > li > a {
  width: 356px;
}

  
  /* i-category */
  .news-layout .i-category {
    display: block;
    width: 110px;
    margin-top: .5em;
    padding: 2px;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
  }
  
  /* ----- plugin-layout ----- */
  .plugin-layout {
    margin-top: 50px;
  }
  .plugin-layout a {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    padding: 27px 39px 26px;
    border: 1px solid #ddd;
    color: #333;
    text-decoration: none;
    outline: none;
  }
  .plugin-layout .plugin_detail {
    padding-left: 36px;
  }
  .plugin-layout a .a-blank {
    color: #0075c2;
    text-decoration: underline;
  }
  .plugin-layout a:hover .a-blank {
    text-decoration: none;
  }
  
  /* ----- editor-layout ----- */
  .editor-layout {
    margin: 20px 0;
  }
  .editor-layout > *:first-child {
    margin-top: 0 !important;
  }
  .editor-layout > *:last-child {
    margin-bottom: 0 !important;
  }
  
  /* ----- cmn-cta-layout ----- */
  .cta-cmn-layout {
    padding: 5px 8px 0;
  }
  .cta-cmn-layout > *:first-child {
    margin-top: 0 !important;
  }
  [class*="cta-cmn-layout"] .cta-cmn_column {
    display: flex;
    justify-content: center;
    margin-top: 14px;
  }
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item{
    width: calc((100% - 28px)/2);
  }
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item:first-child {
    display: flex;
    justify-content: flex-end;
  }
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item + .cta-cmn_item {
    margin-left: 28px;
  }
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item > *:first-child {
    margin-top: 0 !important;
  }
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item > *:last-child {
    margin-bottom: 0 !important;
  }
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item .link-button,
  [class*="cta-cmn-layout"] .cta-cmn_column > .cta-cmn_item .link-button a {
    width: 100%;
  }
  [class*="cta-cmn-layout"] .cta-cmn_lead {
    margin: 0;
    font-weight: bold;
    font-size: 1.6rem;
  }
  [class*="cta-cmn-layout"] .link-text.cta-cmn_link {
    margin: 0;
    font-size: 1.8rem;
  }
  [class*="cta-cmn-layout"] .link-text.cta-cmn_link > li {
    line-height: 1;
  }
  [class*="cta-cmn-layout"] .link-text.cta-cmn_link > li a {
    word-break: break-word;
  }
  [class*="cta-cmn-layout"] .link-text.cta-cmn_link > li a::before {
    top: .4em;
    left: -1px;
  }
  [class*="cta-cmn-layout"] .cta-cmn_small {
    margin-top: 16px;
    font-size: 1.4rem;
  }
  [class*="cta-cmn-layout"] .cta-cmn_small + .cta-cmn_small {
    margin-top: 5px;
  }
  [class*="cta-cmn-layout"] .cta-cmn_tel {
    display: block !important;
    padding-top: 5px;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 1.2;
  }
  [class*="cta-cmn-layout"] .cta-cmn_number {
    font-size: 1.8rem;
  }
  [class*="cta-cmn-layout"] .cta-cmn_caption {
    margin-top: 9px;
    font-size: 1.2rem;
  }
  .box-layout + .cta-cmn_note.list-note {
    width: 740px;
    margin: -19px auto 0;
  }
  /* ----- cta-layout ----- */
  [class*="cta-layout"] .cta_item > *:first-child,
  [class*="cta-layout"] .cta_title + *,
  [class*="cta-layout"] .cta_item > section > [class*="heading"] {
    margin-top: 0 !important;
  }

  [class*="cta-layout"] .cta_item > *:last-child {
    margin-bottom: 0 !important;
  }
  [class*="cta-layout"] .cta_title {
    margin-bottom: .5em;
    font-size: 1.6rem;
    line-height: 1.3;
  }
  [class*="cta-layout"] .cta_tel {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.2;
  }
	[class*="cta-layout"] .cta_fax {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.2;
  }
  [class*="cta-layout"] .cta_number {
    font-size: 2rem;
  }
  [class*="cta-layout"] .cta_sub {
    margin-top: .5em;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  [class*="cta-layout"] [class*="link-button"] > li > a {
    width: 100%;
  }
  .cta-layout {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 15px 0;
    padding: 5px 0;
  }
  .cta-layout[data-row-pc="1"] .cta_item {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .cta-layout[data-row-pc="1"] .cta_item > * {
    margin: 0;
  }
  .cta-layout[data-row-pc="1"] .cta_item > .cta_title {
    margin-right: 20px;
  }
  .cta-layout[data-row-pc="2"] .cta_item {
    -webkit-display: flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    position: relative;
    width: 50%;
    margin: 0;
    text-align: center;
  }
  .cta-layout[data-row-pc="2"] .cta_item:nth-child(2n)::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd;
    content: "";
  }
  /* ----- cta-layout ----- */
  .cta-layout-v2 {
    -webkit-display: flex;
    display: flex;
    margin: 15px 0;
    padding: 5px 10px;
  }
  .cta-layout-v2 .cta_sub {
    margin-right: -10px;
    margin-left: -10px;
  }
  .cta-layout-v2[data-row-pc="2"] .cta_item {
    -webkit-display: flex;
    display: flex;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    position: relative;
    width: 50%;
    margin: 30px 0 0;
    padding-left: 30px;
    text-align: center;
  }
  .cta-layout-v2[data-row-pc="2"] .cta_item:nth-child(2n+1) {
    padding: 0 30px 0 0;
  }
  .cta-layout-v2[data-row-pc="2"] .cta_item:nth-child(2n+1)::before {
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd;
    content: "";
  }
  .cta-layout-v2.center_item_block[data-row-pc="2"] {
    -webkit-justify-content: center;
    justify-content: center;
  }
  .cta-layout-v2.center_item_block[data-row-pc="2"] .cta_item:nth-child(2n+1)::before {
    content: none;
  }
  .cta-layout-v2.center_item_block[data-row-pc="2"] .cta_item:nth-child(2n)::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #ddd;
    content: "";
  }
  
    /* ----- cta-layout-v3 ----- */
  .cta-layout-v3 {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid  #ccc;
  }
  .cta-layout-v3[data-col-pc="1"] .cta_item{
    display: block;
  }
  .cta-layout-v3[data-col-pc="2"] .cta_item{
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;  
    justify-content: space-around;
  }
  .cta-layout-v3[data-col-pc="2"] .cta_item .cta_title {
    margin-bottom: 0;
  }
  .sidebar .cta-layout-v3 .link-button > li > a {
    padding: 16px 30px 15px;
  }
  
  /* ----- faq-layout ----- */
  .faq-layout {
    margin: 30px 0;
    background-color: #f6f4f2;
  }
  .faq-layout .faq_question::before,
  .faq-layout .faq_answer .faq_inner::before {
    position: absolute;
    top: 30px;
    left: 30px;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    color: #fff;
    font-family: Arial, Helvetica, "sans-serif";
    font-size: 3rem;
    font-weight: bold;
    line-height: 84px;
    text-align: center;
  }
  .faq-layout .faq_question {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-flex-flow: column nowrap;
    flex-flow: column nowrap;
    position: relative;
    min-height: 144px;
    padding: 30px 30px 30px 144px;
  }
  .faq-layout .faq_question::before {
    background-color: #f0931c;
    content: "Q";
  }
  .faq-layout .faq_question::after {
    position: absolute;
    bottom: -29px;
    left: 50%;
    z-index: 2;
    width: 0;
    height: 0;
    margin-left: -13px;
    border-width: 15px 13px 15px 13px;
    border-style: solid;
    border-color: #f6f4f2 transparent transparent transparent;
    content: "";
  }
  .faq-layout .faq_question .faq_title {
    font-size: 1.6rem;
    font-weight: bold;
  }
  .faq-layout .faq_answer {
    position: relative;
    min-height: 160px;
    padding-top: 15px;
    background-color: #ffeef1;
  }
  .faq-layout .faq_answer::before,
  .faq-layout .faq_answer::after {
    position: absolute;
    top: 0;
    z-index: 1;
    width: 50%;
    height: 15px;
    content: "";
  }
  .faq-layout .faq_answer::before {
    left: 0;
    background-color: #f0931c;
  }
  .faq-layout .faq_answer::after {
    right: 0;
    background-color: #d13;
  }
  .faq-layout .faq_answer .faq_inner {
    position: relative;
    padding: 30px 30px 30px 144px;
  }
  .faq-layout .faq_answer .faq_inner::before {
    background-color: #d13;
    content: "A";
  }
  .faq-layout .faq_answer .faq_inner > *:first-child {
    margin-top: 0 !important;
  }
  .faq-layout .faq_answer .faq_inner > *:last-child {
    margin-bottom: 0 !important;
  }
  .faq-layout .faq_answer .faq_inner > .image-set,
  .faq-layout .faq_answer .faq_inner > .column-layout {
    max-width: 745px;
    margin: 30px 0;
    padding-left: 5px;
  }
  .faq-layout .faq_answer .faq_inner > .column-layout[data-row-pc="2"] > .column_item {
    width: calc((100% - 28px) / 2);
    margin-left: 28px;
  }
  
  /* type-voice */
  .faq-layout.type-voice {
    margin-top: 30px;
  }
  .faq-layout.type-voice .faq_question,
  .faq-layout.type-voice .faq_answer .faq_inner {
    -webkit-display: inherit;
    display: table;
    -webkit-justify-content: inherit;
    justify-content: inherit;
    -webkit-flex-flow: inherit;
    flex-flow: inherit;
    width: 100%;
  }
  .faq-layout.type-voice .faq_question,
  .faq-layout.type-voice .faq_answer .faq_inner {
    padding: 30px 20px;
  }
  .faq-layout.type-voice .faq_question > * {
    margin: 0;
  }
  .faq-layout.type-voice .faq_question .voice-icon-area,
  .faq-layout.type-voice .faq_answer .faq_inner .voice-icon-area {
    display: table-cell;
    width: 102px;
    text-align: center;
  }
  .faq-layout.type-voice .faq_question .voice-icon-area .voice-title,
  .faq-layout.type-voice .faq_answer .faq_inner .voice-icon-area .voice-title {
    margin: 10px 0 0;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
  }
  .faq-layout.type-voice .faq_question::before,
  .faq-layout.type-voice .faq_answer .faq_inner::before {
    content: "";
    display: none;
  }
  .voice-detail {
    display: table-cell;
    vertical-align: middle;
    padding-left: 40px;
    overflow: hidden;
  }
  
  /* ----- airport-layout ----- */
  .airport-layout {
    position: relative;
    margin: 30px 0;
  }
  .airport-layout .airport_navi > li {
    position: absolute;
  }
  .airport-layout .airport_area {
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 0 0;
    text-indent: -9999px;
    outline: none;
    -webkit-transition: none;
    transition: none;
  }
  .airport-layout .balloon-layout {
    display: none;
    min-width: 90px;
  }
  .airport-layout .airport_navi > #airport_area-1,
  .airport-layout .airport_navi > #airport_area-2,
  .airport-layout .airport_navi > #airport_area-14 {width:  94px; height: 34px;}
  .airport-layout .airport_navi > #airport_area-3  {width: 100px; height: 33px;}
  .airport-layout .airport_navi > #airport_area-4,
  .airport-layout .airport_navi > #airport_area-5,
  .airport-layout .airport_navi > #airport_area-6,
  .airport-layout .airport_navi > #airport_area-7,
  .airport-layout .airport_navi > #airport_area-8,
  .airport-layout .airport_navi > #airport_area-9,
  .airport-layout .airport_navi > #airport_area-10,
  .airport-layout .airport_navi > #airport_area-11,
  .airport-layout .airport_navi > #airport_area-15,
  .airport-layout .airport_navi > #airport_area-16,
  .airport-layout .airport_navi > #airport_area-13 {width: 80px; height: 33px;}
  .airport-layout .airport_navi > #airport_area-12 {width: 89px; height: 33px;}
  .airport-layout .airport_navi > #airport_area-17 {width: 89px; height: 33px;}
  .airport-layout .airport_navi > #airport_area-1  {top: 18px; left: 626px;}
  .airport-layout .airport_navi > #airport_area-2  {top: 42px; left: 34px;}
  .airport-layout .airport_navi > #airport_area-3  {top: 78px; left: 149px;}
  .airport-layout .airport_navi > #airport_area-4  {top: 78px; left: 263px;}
  .airport-layout .airport_navi > #airport_area-5  {top: 78px; left: 422px;}
  .airport-layout .airport_navi > #airport_area-6  {top: 109px; left: 584px;}
  .airport-layout .airport_navi > #airport_area-7  {top: 188px; left: 547px;}
  .airport-layout .airport_navi > #airport_area-8  {top: 188px; left: 460px;}
  .airport-layout .airport_navi > #airport_area-9  {top: 188px; left: 371px;}
  .airport-layout .airport_navi > #airport_area-10 {top: 188px; left: 284px;}
  .airport-layout .airport_navi > #airport_area-11 {top: 166px; left: 137px;}
  .airport-layout .airport_navi > #airport_area-12 {top: 208px; left: 88px;}
  .airport-layout .airport_navi > #airport_area-13 {top: 257px; left:  55px;}
  .airport-layout .airport_navi > #airport_area-14 {top: 241px; left: 626px;}
  .airport-layout .airport_navi > #airport_area-15 {top: 132px; left: 405px;}
  .airport-layout .airport_navi > #airport_area-16 {top: 132px; left: 493px;}
  .airport-layout .airport_navi > #airport_area-17 {top: 248px; left: 132px;}
  .airport-layout .airport_navi > #airport_area-1 > a  {background-image: url(/airport/img/airport_bt01.png);}
  .airport-layout .airport_navi > #airport_area-2 > a  {background-image: url(/airport/img/airport_bt02.png);}
  .airport-layout .airport_navi > #airport_area-3 > a  {background-image: url(/airport/img/airport_bt03.png);}
  .airport-layout .airport_navi > #airport_area-4 > a  {background-image: url(/airport/img/airport_bt04.png);}
  .airport-layout .airport_navi > #airport_area-5 > a  {background-image: url(/airport/img/airport_bt05.png);}
  .airport-layout .airport_navi > #airport_area-6 > a  {background-image: url(/airport/img/airport_bt06.png);}
  .airport-layout .airport_navi > #airport_area-7 > a  {background-image: url(/airport/img/airport_bt07.png);}
  .airport-layout .airport_navi > #airport_area-8 > a  {background-image: url(/airport/img/airport_bt08.png);}
  .airport-layout .airport_navi > #airport_area-9 > a  {background-image: url(/airport/img/airport_bt09.png);}
  .airport-layout .airport_navi > #airport_area-10 > a {background-image: url(/airport/img/airport_bt10.png);}
  .airport-layout .airport_navi > #airport_area-11 > a {background-image: url(/airport/img/airport_bt11.png);}
  .airport-layout .airport_navi > #airport_area-12 > a {background-image: url(/airport/img/airport_bt12.png);}
  .airport-layout .airport_navi > #airport_area-13 > a {background-image: url(/airport/img/airport_bt13.png);}
  .airport-layout .airport_navi > #airport_area-14 > a {background-image: url(/airport/img/airport_bt14.png);}
  .airport-layout .airport_navi > #airport_area-15 > a {background-image: url(/airport/img/airport_bt15.png);}
  .airport-layout .airport_navi > #airport_area-16 > a {background-image: url(/airport/img/airport_bt16.png);}
  .airport-layout .airport_navi > #airport_area-17 > a {background-image: url(/airport/img/airport_bt17.png);}
  .airport-layout .airport_navi > #airport_area-1 > a:hover,
  .airport-layout .airport_navi > #airport_area-2 > a:hover,
  .airport-layout .airport_navi > #airport_area-14 > a:hover {background-position:  -94px 0;}
  .airport-layout .airport_navi > #airport_area-3 > a:hover  {background-position: -100px 0;}
  .airport-layout .airport_navi > #airport_area-4 > a:hover,
  .airport-layout .airport_navi > #airport_area-5 > a:hover,
  .airport-layout .airport_navi > #airport_area-6 > a:hover,
  .airport-layout .airport_navi > #airport_area-7 > a:hover,
  .airport-layout .airport_navi > #airport_area-8 > a:hover,
  .airport-layout .airport_navi > #airport_area-9 > a:hover,
  .airport-layout .airport_navi > #airport_area-10 > a:hover,
  .airport-layout .airport_navi > #airport_area-11 > a:hover,
  .airport-layout .airport_navi > #airport_area-15 > a:hover,
  .airport-layout .airport_navi > #airport_area-16 > a:hover,
  .airport-layout .airport_navi > #airport_area-17 > a:hover,
  .airport-layout .airport_navi > #airport_area-13 > a:hover {background-position:  -80px 0;}
  .airport-layout .airport_navi > #airport_area-12 > a:hover {background-position:  -89px 0;}
  .airport-layout .airport_navi > #airport_area-17 > a:hover {background-position:  -89px 0;}
  .airport-layout .airport_navi > #airport_area-1 .balloon-layout  {width: 130px;}
  .airport-layout .airport_navi > #airport_area-14 .balloon-layout {width: 260px;}
  .airport-layout .airport_navi > #airport_area-17 .balloon-layout,
  .airport-layout .airport_navi > #airport_area-12 .balloon-layout,
  .airport-layout .airport_navi > #airport_area-14 .balloon-layout {
    top: auto;
    bottom: 0;
  }
  .airport-layout .airport_navi > #airport_area-17 .balloon-layout::before,
  .airport-layout .airport_navi > #airport_area-12 .balloon-layout::before,
  .airport-layout .airport_navi > #airport_area-14 .balloon-layout::before {
    top: auto;
    bottom: 7px;
  }
  .airport-layout .airport_navi > #airport_area-17 .balloon-layout::after,
  .airport-layout .airport_navi > #airport_area-12 .balloon-layout::after,
  .airport-layout .airport_navi > #airport_area-14 .balloon-layout::after {
    top: auto;
    bottom: 8px;
  }
  /* ----- wi-fi_connect-layout ----- */ 
  .wi-fi_connect_accordion{
    display: table;
    width: 100%
  }
  .wi-fi_connect_accordion_p{
    padding-left: 20px;
    vertical-align: middle;
    display: table-cell;
  }
    .wi-fi_connect_accordion_img {
    display: table-cell;
    width: 150px;
  }
  /* ----- highway-layout ----- */
  .highway-layout {
    position: relative;
    margin: 30px 0;
  }
  .highway-layout .highway_navi > li {
    position: absolute;
  }
  .highway-layout .highway_area {
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 0 0;
    text-indent: -9999px;
    outline: none;
    -webkit-transition: none;
    transition: none;
  }
  .highway-layout .balloon-layout {
    display: none;
    top: -172px;
    bottom: auto;
    min-width: 225px;
  }
  .highway-layout .balloon-layout::before {
    top: 191px;
    bottom: 20px;
  }
  .highway-layout .balloon-layout::after {
    top: 192px;
    bottom: 21px;
  }
  .highway-layout #highway_area-6 .balloon-layout {
    top: -38px;
  }
  .highway-layout #highway_area-6 .balloon-layout::before {
    top: 54px;
    bottom: 20px;
  }
  .highway-layout #highway_area-6 .balloon-layout::after {
    top: 55px;
    bottom: 21px;
  }
  .highway-layout #highway_area-8 .balloon-layout {
    top: -73px;
  }
  .highway-layout #highway_area-8 .balloon-layout::before {
    top: 86px;
    bottom: 20px;
  }
  .highway-layout #highway_area-8 .balloon-layout::after {
    top: 87px;
    bottom: 21px;
  }
  .highway-layout .highway_navi > #highway_area-1 {width: 205px; height: 50px;}
  .highway-layout .highway_navi > #highway_area-2,
  .highway-layout .highway_navi > #highway_area-7 {width: 125px; height: 50px;}
  .highway-layout .highway_navi > #highway_area-3 {width: 240px; height: 77px;}
  .highway-layout .highway_navi > #highway_area-6 {width: 240px; height: 50px;}
  .highway-layout .highway_navi > #highway_area-4,
  .highway-layout .highway_navi > #highway_area-5 {width: 155px; height: 50px;}
  .highway-layout .highway_navi > #highway_area-8 {width: 265px; height: 50px;}
  .highway-layout .highway_navi > #highway_area-1 {top: 187px; left: 16px;}
  .highway-layout .highway_navi > #highway_area-2 {top:  55px; left: 351px;}
  .highway-layout .highway_navi > #highway_area-3 {top: 107px; left: 246px;}
  .highway-layout .highway_navi > #highway_area-4 {top: 207px; left: 310px;}
  .highway-layout .highway_navi > #highway_area-5 {top:  3px; left: 324px;}
  .highway-layout .highway_navi > #highway_area-6 {top:  11px; left: 489px;}
  .highway-layout .highway_navi > #highway_area-7 {top: 255px; left: 604px;}
  .highway-layout .highway_navi > #highway_area-8 {top: 271px; left: 329px;}
  .highway-layout .highway_navi > #highway_area-1 > a {background-image: url(/highway/omnibus/img/omnibus_bt01.png);}
  .highway-layout .highway_navi > #highway_area-2 > a {background-image: url(/highway/omnibus/img/omnibus_bt02.png);}
  .highway-layout .highway_navi > #highway_area-3 > a {background-image: url(/highway/omnibus/img/omnibus_bt03.png);}
  .highway-layout .highway_navi > #highway_area-4 > a {background-image: url(/highway/omnibus/img/omnibus_bt04.png);}
  .highway-layout .highway_navi > #highway_area-5 > a {background-image: url(/highway/omnibus/img/omnibus_bt05.png);}
  .highway-layout .highway_navi > #highway_area-6 > a {background-image: url(/highway/omnibus/img/omnibus_bt06.png);}
  .highway-layout .highway_navi > #highway_area-7 > a {background-image: url(/highway/omnibus/img/omnibus_bt07.png);}
  .highway-layout .highway_navi > #highway_area-8 > a {background-image: url(/highway/omnibus/img/omnibus_bt08.png);}
  .highway-layout .highway_navi > #highway_area-1 > a:hover {background-position: -205px 0;}
  .highway-layout .highway_navi > #highway_area-2 > a:hover,
  .highway-layout .highway_navi > #highway_area-7 > a:hover {background-position: -125px 0;}
  .highway-layout .highway_navi > #highway_area-3 > a:hover,
  .highway-layout .highway_navi > #highway_area-6 > a:hover {background-position: -240px 0;}
  .highway-layout .highway_navi > #highway_area-4 > a:hover,
  .highway-layout .highway_navi > #highway_area-5 > a:hover {background-position: -155px 0;}
  .highway-layout .highway_navi > #highway_area-8 > a:hover {background-position: -265px 0;}
  
  /* ----- balloon-layout ----- */
  .balloon-layout {
    position: absolute;
    top: 0;
    z-index: 2;
    padding: 15px 12px;
    border: 1px solid #999;
    background-color: #fff;
  }
  .balloon-layout::before,
  .balloon-layout::after {
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    content: "";
  }
  .balloon-layout::before {
    top: 7px;
    border-width: 10px 10px 10px 10px;
  }
  .balloon-layout::after {
    top: 8px;
    border-width: 9px 9px 9px 9px;
  }
  .balloon-layout[data-layout-pc="right"] {
    left: calc(100% + 10px);
  }
  .balloon-layout[data-layout-pc="right"]::before {
    left: -20px;
    border-right-color: #999;
  }
  .balloon-layout[data-layout-pc="right"]::after {
    left: -18px;
    border-right-color: #fff;
  }
  .balloon-layout[data-layout-pc="left"] {
    right: calc(100% + 10px);
  }
  .balloon-layout[data-layout-pc="left"]::before {
    right: -20px;
    border-left-color: #999;
  }
  .balloon-layout[data-layout-pc="left"]::after {
    right: -18px;
    border-left-color: #fff;
  }
  .balloon-layout[data-layout-pc="bottom"] {
    top: 42px;
  }
  .balloon-layout[data-layout-pc="bottom"]::before {
    top: -20px;
    border-bottom-color: #999;
  }
  .balloon-layout[data-layout-pc="bottom"]::after {
    top: -18px;
    border-bottom-color: #fff;
    margin-left: 1px;
  }
  .balloon-layout .balloon_link > li {
    margin-top: 1em;
  }
  .balloon-layout .balloon_link > li > a {
    display: inline-block;
    position: relative;
    padding-right: 12px;
    color: #000;
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .balloon-layout .balloon_link > li > a::before {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 7px;
    height: 7px;
    margin-top: -4px;
    border-top: 2px solid #999;
    border-right: 2px solid #999;
    content: "";
  }
  .balloon-layout .balloon_link[data-row-pc="1"] > li:first-child {
    margin-top: 0;
  }
  
  /* ----- map-layout ----- */
  .map-layout {
    margin-top: 20px;
  }
  .map-layout + .link-text {
    margin-top: .5em;
  }
  .map-layout > .map_inner {
    width: 100%;
    height: 300px;
  }
  
  /* ----- search-timetable ----- */
  .search-timetable {
    margin: 30px 0;
    padding: 30px;
    border: 2px solid #ccc;
  }
  .search-timetable .search_contents > * {
    margin: 30px 0;
  }
  .search-timetable .search_contents > *:first-child {
    margin-top: 0;
  }
  .search-timetable .search_contents > *:last-child {
    margin-bottom: 0;
  }
  
  /* search_wrap */
  .search-timetable .search_wrap {
    -webkit-display: flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
  .search-timetable .search_wrap .input-label {
    display: block;
    width: 46px;
    padding: 6px;
    background-color: #d13;
    color: #fff;
    font-weight: bold;
    line-height: 34px;
    text-align: center;
  }
  .search-timetable .start_contents,
  .search-timetable .goal_contents {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 288px;
    height: 46px;
  }
  .search-timetable .start_contents input,
  .search-timetable .goal_contents input {
    width: 242px;
    height: 46px;
    margin: 0;
    padding: 5px 13px;
    border: 1px solid #bbb;
    border-left: none;
    border-radius: 0;
    background-color: #fff;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .search-timetable .exchange_btn {
    -webkit-transform: rotate3d(1, 1, 0, 180deg);
    transform: rotate3d(1, 1, 0, 180deg);
    width: 40px;
    height: 40px;
    border: 1px solid #bbb;
  }
  
  /* search_wrap-v2 */
  .search-timetable .search_wrap-v2 {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .search-timetable .time_head,
  .search-timetable .search_radio {
    width: 100%;
  }
  .search-timetable .time_head {
    margin-bottom: 20px;
    font-weight: bold;
    line-height: 1.1;
  }
  .search-timetable [class^="time_select"] {
    -webkit-display: flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .search-timetable [class^="time_select"] > [class^="time_"] + [class^="time_"],
  .search-timetable .time_select-v2 {
    margin-left: 10px;
  }
  .search-timetable [class^="time_select"] > [class^="time_"] {
    position: relative;
  }
  .search-timetable [class^="time_select"] > [class^="time_"]::after {
    position: absolute;
    top: 50%;
    right: 10px;
    z-index: 1;
    width: 16px;
    height: 10px;
    margin-top: -5px;
    background: url(/common/img/com_sprite01.png) no-repeat -8px -48px;
    content: "";
  }
  .search-timetable [class^="time_select"] > [class^="time_"] select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    z-index: 2;
    height: 46px;
    margin: 0;
    padding: 5px 34px 5px 14px;
    border: 1px solid #bbb;
    border-radius: 0;
    background: none;
  }
  .search-timetable [class^="time_select"] > [class^="time_"] select::-ms-expand {
    display: none;
  }
  .search-timetable .search_radio {
    margin-top: 20px;
  }
  .search-timetable .radio_list {
    -webkit-display: flex;
    display: flex;
  }
  .search-timetable .radio_list > li {
    margin-right: 18px;
  }
  .search-timetable .radio_list input {
    display: none;
  }
  .search-timetable .radio_list label {
    display: block;
    position: relative;
    padding-left: 25px;
  }
  .search-timetable .radio_list label::before {
    position: absolute;
    top: .1em;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #bbb;
    border-radius: 50%;
    background-color: #fff;
    content: "";
  }
  .search-timetable .radio_list input:checked + label::before {
    border: 6px solid #d13;
  }
  
  /* timetable_search_btn */
  .search-timetable .timetable_search_btn {
    width: 360px;
    margin: 0 auto;
    padding: 15px 0 12px;
    background-color: #d13;
    text-align: center;
    cursor: pointer;
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  .search-timetable .timetable_search_btn:hover {
    opacity: .8;
  }
  .search-timetable .timetable_search_btn button {
    display: inline-block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    background-color: transparent;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    outline: none;
    cursor: pointer;
  }
  .search-timetable .timetable_search_btn button::after {
    display: inline-block;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    width: 9px;
    height: 9px;
    vertical-align: top;
    margin: .5em 0 0 7px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: "";
  }
  
  /* ----- direction-layout ----- */
  .direction-layout .direction_list > li > .column-media {
    margin-top: 0;
  }
  .direction-layout .direction_list > li > .column-media .column_detail {
    position: relative;
    padding-left: 2em;
  }
  .direction-layout .direction_list > li > .column-media .column_detail > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .direction-layout > .link-button-v3 {
    margin-top: 45px;
  }
  .direction-layout > .link-button-v3 a {
    padding: 16px 40px 15px;
  }
  
  /* ----- day-title ----- */
  .day-title{
    font-size: 1.8rem;
    font-weight: bold;
    border-bottom: 2px solid #a4a4a4;
    padding-bottom: 11px;
    margin-bottom: 20px;
    margin-top: 70px;
  }
  
  
  .text-border-top{
    border-top: 1px solid #a4a4a4;
    padding-top: 20px;
    margin-top: 20px;
  }
  
  /* ----- flow-collumn-area ----- */
  .flow-collumn-area.flow-collumn-type02{
    margin-top: 70px;
  }
  .flow-collumn-area > li{
    background: url(/common/img/com_ic07.png) no-repeat 15px bottom / 20px 31px;
    margin-bottom: 30px;
  }
  .flow-collumn-area > li:last-child{
    background: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .flow-collumn-area > li >.flow-text-box p{
    display: table;
    font-size: 1.6rem;
  }
  .flow-collumn-area > li >.flow-text-box .flow-time{
    width: 67px;
  }
  .flow-collumn-area > li >.flow-text-box span{
    display: table-cell;
  }
  .flow-collumn-area .flow-list-type01{
    display: table;
    width: 100%;
    padding-bottom: 42px;
  }
  .flow-collumn-area .flow-list-type01 > div{
    display: table-cell;
    vertical-align: middle;
  }
  .flow-collumn-area .flow-list-type01 .flow-button{
  text-align: right;
  }
  .flow-collumn-area .flow-list-type01 .flow-button .link-button-v2{
  margin: 0 auto;
  }
  .flow-collumn-area .flow-list-type02{
    padding-bottom: 60px;
  }
  .flow-collumn-area > li .flow-media-box > div {
    margin-top: 0;
    margin-bottom: 0;
  }
  .flow-collumn-area > li .flow-media-box .flow-img-box{
    margin-right: 10px;
    margin-bottom: 0;
  }
  
  .flow-collumn-area > li .flow-media-box .flow-img-box img{
    width: 350px;
  }
  .flow-collumn-area > li .flow-media-box .flow-detail-box p{
    font-size: 1.4rem;
  }
  
  .flow-collumn-area > li .flow-media-box.flow-media-type-2 .flow-img-box{
    margin: 15px 0 0 0;
  }
  
  /* ----- compo-important ----- */
  .compo-important {
    padding: 8px 0;
  }
  .compo-important .compo-important_news {
    display: table;
    background-color:  #fff;
    border: 1px solid #b10011;
  }
  .compo-important .compo-important_news dt {
    display: table-cell;
    width: 376px;
    padding: 6px 0;
    vertical-align: middle;
    background-color: #b10011;
    color: #fff;
    font-weight: bold;
    text-align: center;
  }
  .compo-important .compo-important_news dt span {
    position: relative;
    padding-left: 30px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .compo-important .compo-important_news dt span::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background: url(/common/img/com_sprite01.png) no-repeat;
    background-position: -9px -308px;
  }
  .compo-important .compo-important_news dd {
    display: table-cell;
    width: 918px;
  }
  .compo-important .compo-important_news dd .compo-important_article {
    padding: 8px 19px 6px;
    background-color: #fff;
  }
  .compo-important .compo-important_news dd .compo-important_article:nth-child(2n) {
    background-color: #f6f4f2;
  }
  .compo-important .compo-important_news dd .compo-important_article a.a-blank:after,
  .compo-important .compo-important_news dd .compo-important_article a.a-pdf:after {
    display: inline-block;
    margin: .3em 0 0 5px;
  }
  
  /* twitter-layout */
  .twitter-layout {
    border: 1px solid  #ccc;
    max-height: 580px;
    overflow: auto;
  }
  .twitter-layout iframe {
    width: 100%;
  }
  
  /* charter-lineup-icon */
  .charter-lineup-icon {
    margin: 30px 0 0;
  }
  .charter-lineup-icon + .charter-lineup-icon {
    margin-top: 12px;
  }
  .charter-lineup-icon__title {
    font-size: 1.2rem;
    font-weight: bold;
  }
  .charter-lineup-icon__list {
    margin-top: 10px;
  }
  .charter-lineup-icon__list > li {
    margin-top: 10px;
    margin-left: 20px!important;
  }
  .charter-lineup-icon__list > li > :first-of-type {
    margin-top: 0;
  }
  .charter-lineup-icon__list > li > :last-of-type {
    margin-bottom: 0;
  }
  .charter-lineup-icon__list[data-row-pc="2"] > li {
    width: calc((100% - 20px) / 2);
  }
  .charter-lineup-icon__list[data-row-pc="3"] > li {
    width: calc((100% - 40px) / 3);
  }
  .charter-lineup-icon__list[data-row-pc="4"] > li {
    width: calc((100% - 60px) / 4);
  }
  .charter-lineup-icon__list[data-row-pc="5"] > li {
    width: calc((100% - 80px) / 5);
  }
  .charter-lineup-icon__list[data-row-pc="6"] > li {
    width: calc((100% - 100px) / 6);
  }
  .charter-lineup-icon__list[data-row-pc="7"] > li {
    width: calc((100% - 120px) / 7);
  }
  .charter-lineup-icon__list[data-row-pc="8"] > li {
    width: calc((100% - 140px) / 8);
  }
  
  
  /* ----- column-heading-lv3 ----- */
  .column-heading-lv3 {
    margin: 50px 0 0;
    border-bottom: 1px solid #ccc;
  }
  .heading-lv2 + section > .column-heading-lv3 {
    margin-top: 30px;
  }
  .column-heading-lv3 + *,
  .column-heading-lv3 + section > [class*="heading-lv"] {
    margin-top: 10px !important;
  }
  .column-heading-lv3 > .column_item {
    margin-top: 30px;
  }
  .column-heading-lv3 > .column_item .heading-lv3 .block {
    border-bottom: none;
  }
  
  /* ----- regular_tourism_btn ----- */
  .regular_tourism_btn {
    width: 254px;
    border: 1px solid #bbb;
    margin: 0 0 0 auto;
  }
  .regular_tourism_btn > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 8px 30px;
    background-color: #fff;
    color: #000;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  .regular_tourism_btn > a > span {
    position: relative;
    padding-left: 64px;
  }
  .regular_tourism_btn > a > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 54px;
    height: 32px;
    margin-top: -16px;
    background: url("/common/img/com_ic09.png") no-repeat 0 0;
  }
  
  /* ----- qr-layout ----- */
  .qr-layout {
    margin: 20px 0 0;
  }
  .qr-layout > .qr_title > .qr_link {
    display: inline-block;
  }
  .qr-layout > .qr_title > .qr_link:hover {
    opacity: .6;
  }
  .qr-layout > .qr_title > .qr_link.a-blank::after {
    display: inline-block;
    margin: .35em 5px 0;
  }
  
  /* ----- scroll-box ----- */
  .scroll-box {
    overflow: auto;
    height: 258px;
    margin: 30px 0;
    border: 1px solid #ccc;
    background-color: #fff;
  }
  .scroll-box .scroll-box_inner {
    padding: 25px 30px;
  }
  .scroll-box .scroll-box_inner > *:first-child,
  .scroll-box .scroll-box_inner > *:first-child > [class*="heading-"] {
    margin-top: 0 !important;
  }
  
  /* ----- agree-checkbox ----- */
  .agree-checkbox-wrap {
    display: flex;
    justify-content: center;
    margin: 20px 0 0;
  }
  .agree-checkbox {
    position: relative;
  }
  .agree-checkbox > input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    overflow: hidden;
    padding: 0;
    clip: rect(0, 0, 0, 0);
  }
  .agree-checkbox .agree-checkbox_label {
    position: relative;
    display: block;
    padding-left: 26px;
    width: 100%;
    height: 100%;
    cursor: pointer;
  }
  .agree-checkbox .agree-checkbox_label::before {
    position: absolute;
    border: 1px solid #ddd;
    border-radius: 0;
    background-color: #fff;
    width: 20px;
    height: 20px;
    top: 1px;
    left: 0;
    content: "";
  }
  .agree-checkbox .agree-checkbox_label::after {
    position: absolute;
    opacity: 0;
    width: 7px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    top: 3px;
    height: 13px;
    left: 7px;
    content: "";
  }
  .agree-checkbox > input:checked + .agree-checkbox_label::before {
    border-color: #dd1133;
    background-color: #dd1133;
  }
  .agree-checkbox > input:checked + .agree-checkbox_label::after {
    opacity: 1;
  }
  .agree-checkbox .agree-checkbox_text {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.7;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .column-media::after,
  .table-layout::after {
    display: block;
    clear: both;
    content: "";
  }
}