@charset "UTF-8";

/*!
Theme Name: JFT Theme
Theme URI: https://ekaki-j.com
Author: Junichi Kitamura
Author URI: https://ekaki-j.com
Template:   cocoon-master
Version:    1.1.2
Tags: 企業向け,コーポレート,シンプル,レスポンシブ,JFTオリジナル
TextDomain: JFT Theme
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/*###### 共通設定 ######*/
.clearfix:after {
content:" ";
display:block;
clear:both;
}
.hide {
display: none;
}
h1.entry-title {
text-align: center;
font-weight: normal;
color: #113f8f;
font-size: 200%;
position: relative;
}
span.inline-link {
display: inline-block;
}
span.inline-link:before {
content: "\f054\f054";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-left: 0.5em;
margin-right: 0.5em;
color: #113f8f;
}
.entry-content h2 {
font-weight: normal;
color: #113f8f;
font-size: 150%;
background: none;
padding-left: 0;
padding-bottom: 0;
border-bottom: 1px solid;
}
.entry-content h3 {
font-weight: normal;
color: #113f8f;
font-size: 130%;
display: flex;
align-items: center;
justify-content: left;
border: none;
padding: 0;
}
.entry-content h3 a {
text-decoration: none;
color: #113f8f;
}
.entry-content h3 a:hover {
text-decoration: underline;
}
.entry-content h4 {
font-weight: normal;
color: #113f8f;
font-size: 120%;
display: flex;
align-items: center;
justify-content: left;
border-width: 1px;
}
.entry-content a img:hover {
opacity: 0.7;
}
body.category #main,
body.error404 #main,
body.search #main,
body.blog #main {
width: 100%;
margin-right: 0;
}
/*** 問い合わせリンクボタン ***/
div.request-wrap {
display: flex;
flex-direction: column;
align-items: center;
font-size: 200%;
color: #113f8f;
}
.request-wrap .dl-single-line {
padding: 0;
margin: 0;
font-family: FuturaLTPro,Futura,San Francisco,Helvetica Neue,Arial,sans-serif;
}
.request-wrap .dl-single-line dt {
clear: left;
float: left;
width: 2.5em;
font-weight: normal;
}
.request-wrap .dl-single-line dd {
margin-left: 3em;
}
div.request-wrap .tel-num,
div.request-wrap .fax-num {
font-weight: bold;
}
a.inquiry-button {
color: #fff;
background-color: #eb6100;
font-weight: 700;
line-height: 1.5;
position: relative;
display: inline-block;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-transition: all 0.3s;
transition: all 0.3s;
text-align: center;
vertical-align: middle;
text-decoration: none;
letter-spacing: 0.1em;
border-radius: 0.5rem;
font-size: 1.5rem;
padding: 1.5rem 3rem 1.5rem 2rem;
}
a.inquiry-button:hover {
color: #fff;
background: #f56500;
opacity: 1;
}
a.inquiry-button i.fa {
margin-right: 1rem;
}
a.inquiry-button:before {
font-family: 'Font Awesome 5 Free';
font-size: 1.6rem;
line-height: 1;
position: absolute;
top: calc(50% - .8rem);
right: 1rem;
margin: 0;
padding: 0;
content: '\f054';
}
/*** ヘッダー ***/
.logo-header {
text-align: left;
}
/*** TablePress ***/
table.tablepress th {
text-align: center;
}
.header-site-logo-image {
max-width: 300px;
margin-left: 20px;
margin-right: 20px;
opacity: 0;
animation: logoFalling 1.5s ease 0.5s alternate forwards;
}
.header-in .tagline {
color: white;
font-size: small;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-shadow: 2px 2px 1px #1e73be, -2px -2px 1px #1e73be,
             -2px 2px 1px #1e73be, 2px -2px 1px #1e73be,
             0px 2px 1px #1e73be,  0 -2px 1px #1e73be,
             -2px 0 1px #1e73be, 2px 0 1px #1e73be;
}
.header {
position: relative;
}
/*** ナビゲーション ***/
.heade-in {
position: relative;
}
.header-in:before {
content: "";
width: 100%;
position: absolute;
bottom: 0;
left: 0;
border-top: 1px solid #0076c9;
transform: scaleX(0);
transform-origin: right center;
animation: headerLineReverse 0.8s linear 0.5s normal forwards;
}
.navi {
box-sizing: border-box;
position: relative;
}
.navi:after {
content: "";
width: 0;
position: absolute;
bottom: -6px;
border-top: 6px solid #0076c9;
display: inline-block;
animation: headerLine 1.2s linear 0.5s normal forwards;
opacity: 0;
}
.fixed {
position: fixed;
top: 0;
z-index: 100;
width: 100%;
}
.navi-in .menu-item {
background-color: #113f8f;
}
.navi-in .menu-header .caption-wrap {
font-weight: bold;
}
/* フラットボタンアニメ */
.navi-in .menu-header li a {
overflow: hidden;
}
.navi-in .menu-header li a .caption-wrap {
position: relative;
z-index: 1;
}
.navi-in .menu-header li a:before {
position: absolute;
top: 0;
left: 30px;
width: 150%;
height: 600%;
content: '';
-webkit-transition: all .5s ease-in-out;
transition: all .5s ease-in-out;
-webkit-transform: translateX(-98%) translateY(-70%) rotate(135deg);
transform: translateX(-98%) translateY(-70%) rotate(135deg);
background: #fff100;
}
.navi .menu-header > .menu-item.current-menu-item > a:before,
.navi .menu-header > .menu-item.current-menu-ancestor > a:before,
.navi .menu-header > .menu-item .current-menu-item a:before {
-webkit-transform: translateX(-9%) translateY(-25%) rotate(135deg);
transform: translateX(-9%) translateY(-25%) rotate(135deg);
}
.navi .menu-header > .menu-item.current-menu-item > a .caption-wrap,
.navi .menu-header > .menu-item.current-menu-ancestor > a .caption-wrap,
.navi .menu-header > .menu-item .current-menu-item .caption-wrap {
color: #224082;
}
/* ホバーアニメーション */
.navi-in .menu-header li a:hover:before {
-webkit-transform: translateX(-9%) translateY(-25%) rotate(135deg);
transform: translateX(-9%) translateY(-25%) rotate(135deg);
}
#navi .navi-in a:hover {
background-color: #113f8f;
}
.navi-in .menu-header li a:hover .caption-wrap {
color: #224082;
}
/*** リスト設定 ***/
dl:not(.komelist) dt {
font-weight: bold;
}
.dl-single-line.history dt,
.dl-single-line.company dt,
.dl-single-line.location dt,
.dl-single-line.awards dt,
.dl-single-line.schedule dt,
.dl-single-line.inquiry dt,
.dl-single-line.facility dt,
.dl-single-line.policy dt {
clear: left;
float: left;
}
.div:not(.information-box) .dl-single-line:not(.history):not(.staff):not(.awards) dt {
text-align: right;
}
body.inn .dl-single-line.facility dt {
width: 11em;
text-align: right;
}
body.inn .dl-single-line.facility dd {
margin-left: 11.5em;
}
body.inn .dl-single-line.policy dt {
width: 8em;
text-align: right;
}
body.inn .dl-single-line.policy dd {
margin-left: 8.5em;
}
.dl-single-line.inquiry dt {
width: 11em;
text-align: right;
}
.dl-single-line.inquiry dd {
margin-left: 11.5em;
}
.dl-single-line.schedule dt {
margin-right: .5em;
}
.dl-single-line.company dt {
width: 5em;
text-align: right;
}
.dl-single-line.company dd {
margin-left: 5.5em;
}
.dl-single-line.company dd dl dt {
width: 9em;
text-align: right;
}
.dl-single-line.company dd dl dt {
margin-left: 9.5em;
}
.dl-single-line.location {
margin-bottom: 0;
}
.dl-single-line.location:not(.overseas) dt {
width: 4em;
}
.dl-single-line.location:not(.overseas) dd {
margin-left: 4.5em;
}
.dl-single-line.overseas dt {
width: 6em;
}
.dl-single-line.overseas dd {
margin-left: 6.5em;
}
.dl-single-line.location p {
margin: 0;
padding: 0;
}
.dl-single-line.location dd span {
display: inline-block;
margin-left: 1em;
}
.dl-single-line.location dd dl {
margin-top: 0;
padding-top: 0;
}
.dl-single-line.history dt {
width: 6.5em;
}
.dl-single-line.history dt span {
display: inline-block;
width: 2.5em;
text-align: right;
}
.dl-single-line.history dd {
margin-left: 7em;
}

.dl-single-line.awards dt {
width: 7em;
}
.dl-single-line.awards dt span.month {
display: inline-block;
width: 2em;
text-align: right;
}
.dl-single-line.awards dt span.day {
display: inline-block;
width: 1.5em;
text-align: right;
}
.dl-single-line.awards dd:not(.img-wrap) {
margin-left: 7.5em;
}
.dl-single-line.awards dd.img-wrap {
margin-left: auto;
margin-right: auto;
margin-bottom: 20px;
}
.dl-single-line.awards dd.img-wrap .flex-container {
justify-content: space-between;
}
.dl-single-line.awards dd.img-wrap .flex-container .flex-item {
width: 48%;
border: none;
}
.dl-single-line.awards dd.img-wrap .flex-container .flex-item a {
box-shadow: none;
}

.dl-single-line.staff {
width: 12em;
margin-left: auto;
}
.dl-single-line.staff dt:not(.company) {
clear: left;
float: left;
width: 7em;
text-align: right;
}
.dl-single-line.staff dt.sub-position {
font-weight: normal;
}
.dl-single-line.staff dd {
margin-left: 7.5em;
}
dl.komelist,
dl.komelist2 {
font-size: 90%;
}
dl.komelist dt {
clear: left;
float: left;
width: 1em;
}
dl.komelist dd {
margin-left: 1em;
}
/*** アピールエリア ***/
.appeal-content {
background: none;
width: 100%;
min-width: 100%;
}
.appeal-title {
font-weight: normal;
color: #fff;
font-size: 200%;
line-height: 110%;
}
.appeal-message {
color: #113f8f;
}
/* IE対応 */
@media all and (-ms-high-contrast: none) {
 .appeal-in {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 400px;
 }
}
/*** キャプション画像 ***/
.entry-content .flex-container .wp-caption,
.entry-content .column-wrap .wp-caption {
border: none;
background-color: transparent;
margin: 0;
padding: 0;
}
.entry-content .flex-container .wp-caption-text,
.entry-content .column-wrap .wp-caption-text {
margin-top: .2em;
}
/*** flex box ***/
.flex-container {
display: flex;
flex-wrap: wrap;
list-style-type: none;
margin: 0;
padding-left: 0 !important;
justify-content: center;
}
.flex-container .flex-item {
width: 33.33333333%;
margin: 0;
box-sizing: border-box;
border: 2px solid #fff;
position: relative;
}
.flex-container .flex-item a {
display: block;
width: 100%;
text-decoration: none;
box-shadow: 0 3px 1px -1px #c7c7c7;
}
.home.page .flex-container .flex-item span.item-wrap {
position: absolute;
display: flex;
}
.flex-container .flex-item a img {
display: block;
}
.history .flex-container {
justify-content: left;
}
.history .flex-container .flex-item {
width: 50%;
}
/* ホーム */
.home.page .flex-container .flex-item {
position: relative;
}
.home.page div:not(.welcome-to-japan) .flex-container.flow .flex-item {
width: 50%;
}
.home.page .flex-container.pict .flex-item {
width: 50%;
padding-left: 2%;
padding-right: 2%;
}
.home.page .welcome-to-japan .flex-container.flow .flex-item:last-child {
width: 100%;
height: 50%;
}
.home.page .flex-container.button .flex-item {
width: 25%;
}
.home.page .flex-container .flex-item a {
display: block;
width: 100%;
height: 100%;
text-decoration: none;
overflow: hidden;
box-shadow: none;
}
/* ボタンアニメ */
.home.page .flex-container.button .flex-item {
overflow: hidden;
}
.home.page .flex-container.button .flex-item a {
border-radius: 50%;
background: #fff;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
position: relative;
}
.home.page .flex-container .flex-item span.item-wrap {
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.home.page .flex-container .flex-item span {
line-height: 110%;
}
.home.page .flex-container.button .flex-item span.item-wrap {
align-items: flex-start;
justify-content: center;
flex-direction: column;
line-height: 110%;
-webkit-transition: all .3s;
transition: all .3s;
margin-left: 20%;
}
.home.page .flex-container.button .flex-item span.item-title {
font-weight: bold;
color: #fff999;
z-index: 1;
text-shadow: 0.1em 0.1em 0.05em #113f8f;
letter-spacing: .1em;
}
.home.page .flex-container.button .flex-item span.item-description {
font-family: FuturaLTPro,Futura,San Francisco,Helvetica Neue,Arial,sans-serif;
color: #113f8f;
text-shadow: 0.1em 0.1em 0.05em #fff999;
z-index: 1;
}
.home.page .flex-container.button .flex-item:hover span.item-wrap {
margin-left: 5%;
}
.home.page .flex-container.button .flex-item:before {
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
width: 20%;
height: 50%;
content: '';
-webkit-transition: all .3s;
transition: all .3s;
-webkit-transform: translateX(0) translateY(0);
transform: translateX(0) translateY(0);
border-radius: 50%;
  background: #fff100;
z-index: 1;
opacity: 0.7;
}
.home.page .flex-container.button .flex-item:hover:before {
font-family: "Font Awesome 5 Free";
font-weight: 900;
width: 25%;
height: 25%;
content: '\f072';
-webkit-transform: translateX(300%) translateY(-140%);
transform: translateX(300%) translateY(-140%);
color: #fff;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
background: #113f8f;
z-index: 2;
opacity: 1.0;
}

.home.page .flex-container.zoom .flex-item img {
width: 100%;
height: auto;
display: block;
transition-duration: 0.3s;
box-shadow: 0 2px 2px #113f8f;
}
.home.page .flex-container.zoom .flex-item:hover img {
transform: scale(1.1);
transition-duration: 0.3s;
opacity: 0.7;
}

.home.page .flex-container.flow {
justify-content: flex-end;
}
.home.page .flex-container.flow .flex-item {
line-height: 0;
}
.home.page .flex-container.flow .flex-item:nth-of-type(1) img {
border-radius: 100% 0 0 0;
}
.home.page .flex-container.flow .flex-item:nth-of-type(2) img {
border-radius: 0 100% 0 0;
}
.home.page div:not(.welcome-to-japan) .flex-container.flow .flex-item:nth-of-type(3) img {
border-radius: 0 0 100% 0;
}
.home.page div.welcome-to-japan .flex-container.flow .flex-item:nth-of-type(3) img {
border-radius: 0 0 50% 50%/0 0 100% 100%;
}
.home.page .flex-container.flow .flex-item:nth-of-type(4) img {
border-radius: 0 0 0 100%;
}
.home.page .flex-container.flow .flex-item span.item-wrap {
align-items: center;
justify-content: flex-start;
font-weight: 500;
line-height: 110%;
color: #113f8f;
text-shadow: 2px 2px 6px #ffffff, -2px -2px 6px #ffffff,
             -2px 2px 6px #ffffff, 2px -2px 6px #ffffff,
             0px 2px 6px #fff100,  0 -2px 6px #ffffff,
             -2px 0 6px #ffffff, 2px 0 6px #fff100;
}
.home.page .flex-container.flow .flex-item:nth-of-type(1) span.item-wrap,
.home.page .flex-container.flow .flex-item:nth-of-type(4) span.item-wrap {
margin-right: .5em;
}
.home.page .flex-container.flow .flex-item:nth-of-type(2) span.item-wrap,
.home.page .flex-container.flow .flex-item:nth-of-type(3) span.item-wrap {
margin-left: .5em;
}

.home.page .flex-container.flow li:not(:last-child).flex-item:after {
content: "\f061";
font-family: "Font Awesome 5 Free";
font-weight: 900;
position: absolute;
top: 0;
bottom: 0;
right: -0.5em;
display: flex;
align-items: center;
justify-content: flex-start;
color: #fff100;
z-index: 1;
text-shadow: 3px 3px 4px #113f8f;
}
.home.page .flex-container.flow li:nth-of-type(2).flex-item:after {
transform: rotate(90deg);
top: 100%;
bottom: 0;
left: 0;
right: 0;
justify-content: center;
text-shadow: 3px -3px 4px #113f8f;
}
.home.page .flex-container.flow li:nth-of-type(3).flex-item {
order: 4;
}
.home.page .flex-container.flow li:nth-of-type(3).flex-item:after {
transform: rotate(180deg);
top: 0;
bottom: 0;
left: -0.5em;
right: 100%;
justify-content: flex-end;
text-shadow: -3px -3px 4px #113f8f;
}


.flex-container-home {
display: flex;
flex-wrap: wrap;
list-style-type: none;
margin: 0;
padding: 0;
justify-content: center;
padding-left: 0 !important;
box-shadow: 0px -6px 20px -10px rgba(23,47,61,0.8);
background-color: #fff;
}
.flex-container-home .anchor-icon {
display: none;
}
.flex-container-home .flex-item {
width: 25%;
margin: 0;
box-sizing: border-box;
border: 2px solid #fff;
position: relative;
text-align: center;
display: block;
}
.flex-container-home .flex-item .item-title {
position: absolute;
bottom: 0;
left: 0;
right: 0;
line-height: 120%;
z-index: 1;
font-weight: bold;
display: block;
padding: 6px 20px;
font-family: 'arial black', sans-serif;
font-size: 110%;
color: #fff;
text-shadow: 2px 2px 1px #599eff, -2px -2px 1px #599eff,
             -2px 2px 1px #599eff, 2px -2px 1px #599eff,
             0px 2px 1px #599eff,  0 -2px 1px #599eff,
             -2px 0 1px #599eff, 2px 0 1px #599eff;
}
.flex-container-home .flex-item .item-title strong {
display: inline-block;
}
.flex-container-home .flex-item:hover .item-title span:not(.item-description):not(.one-word) {
display: inline-block;
position: relative;
top: 0;
animation-name: textWave;
animation-duration: .2s;
animation-timing-function: ease-in-out;
animation-direction: alternate;
}
.flex-container-home .flex-item a {
display: block;
width: 100%;
height: 100%;
text-decoration: none;
overflow: hidden;
}
.flex-container-home .flex-item img {
width: 100%;
height: auto;
display: block;
transition-duration: 0.3s;
}
.flex-container-home .flex-item:hover img {
transform: scale(1.1);
transition-duration: 0.3s;
opacity: 0.7;
}
/* 宿泊施設 */
.page.inn .flex-container.photo {
justify-content: flex-start;
}
.page.inn .flex-container.photo .flex-item {
width: 25%;
}
.page.inn .flex-container.photo .flex-item a {
box-shadow: none;
}
.page.inn .flex-container.tourist-attractions {
justify-content: flex-start;
}
.page.inn .flex-container.tourist-attractions .flex-item {
width: auto;
height: 40px;
margin: 2px;
padding: 3px 20px;
border-radius: 20px;
box-sizing: border-box;
position: relative;
background: #fff999;
display: flex;
justify-content: center;
align-items: center;
font-weight: 500;
}
.page.inn .flex-container.tourist-attractions .flex-item:first-child {
margin-left: 0;
}
.page.inn .flex-container.tourist-attractions .flex-item:last-child {
margin-right: 0;
}
/*** 本文 ***/
/** ホームページ **/
body.home .entry-title:before {
content: "\f5b0";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
.home.page dl dt {
color: #113f8f;
display: flex;
align-items: center;
}
.home.page dl dt:after {
content: "";
border-top: 1px solid;
width: 3em;
margin-left: .3em;
}
.home.page dl dt span.fa,
.home.page dl dt span.fas {
margin-right: .5em;
color: #1e73be;
}
.home.page dl dt span.fas:after {
}
.home.page .moving-wrap {
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
transform: translateY(2em);
}
.home.page .moving-wrap.active {
transform: translateY(0);
}
/** お役立ち情報 **/
body.helpful_information .entry-title:before {
content: "\f05a";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
body.helpful_information span.fas.fa-file-pdf {
margin-right: .5em;
color: #1e73be;
}
/** 航空券 **/
body.domestic_flight .entry-title:before,
body.international_flight .entry-title:before {
content: "\f3ff";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
/** 国内ツアー **/
body.internal_tour .entry-title:before {
content: "\f5b0";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
.internal_tour.page h2 span.fa,
.internal_tour.page h2 span.fas {
margin-right: .5em;
color: #1e73be;
}
.internal_tour.page h2 span.fa:nth-of-type(n+2),
.internal_tour.page h2 span.fas:nth-of-type(n+2) {
margin-left: .5em;
color: #1e73be;
}
/** 会社概要 **/
body.about .entry-title:before {
content: "\f1ad";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
/** ビザ査証 **/
body.visa .entry-title:before {
content: "\f5ab";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
/* Table Press */
table#tablepress-2 td.column-5,
table#tablepress-2 td.column-6 {
white-space: nowrap;
}
/** LCC **/
body.lcc .entry-title:before {
content: "\f5b0";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
/** 宿泊施設 **/
body.inn .entry-title:before {
content: "\f015";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
.page.inn .flex-wrap {
position: relative;
display: flex;
align-items: center;
justify-content: center;
margin: 0;
padding: 0;
}
.page.inn .flex-wrap .fas {
display: none;
}
/*** フッター ***/
.footer-bottom-logo .logo-image {
max-width: 200px;
}
.footer-bottom-logo img {
height: auto;
}
.navi-footer-in > .menu-footer li {
border-left-color: #fff;
}
.navi-footer-in > .menu-footer li:last-child {
border-right-color: #fff;
}
.navi-footer-in {
margin-left: 200px;
}
.copyright {
font-family: Verdana,"Droid Sans",sans-serif;
}
/*** SNS ***/
body .container .sns-share .sns-share-buttons .share-button .button-caption {
display:none;
}
body .container .sns-share .sns-share-buttons {
justify-content: center;
}
body .container .sns-share .sns-share-buttons a {
width: 40px;
height: 40px;
border-radius: 50%;
margin: 8px;
border: 2px solid #fff;
}
body .container .sns-follow .sns-follow-buttons {
justify-content: center;
}
body .container .sns-follow .sns-follow-buttons a {
width: 40px;
height: 40px;
border-radius: 50%;
margin: 8px;
border: 2px solid #fff;
}
.sns-share,
.sns-follow {
position: relative;
text-align: center;
}
.sns-share-message,
.sns-follow-message {
color: #113f8f;
}
.sns-share-message::before,
.sns-share-message::after,
.sns-follow-message::before,
.sns-follow-message::after {
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f0d7";
padding-right: .5em;
padding-left: .5em;
}
/*** 検索窓 ***/
.search-box .search-edit {
border-radius: 40px;
}
.search-edit:focus {
outline: none;
border-color: #224082;
}
/*** サイドバー ***/
body.category #sidebar,
body.error404 #sidebar,
body.search #sidebar,
body.blog #sidebar {
display: none;
}
/*###### トップページ ######*/
.home.page .date-tags,
.home.page .article-header .sns-share,
.home.page .eye-catch-wrap,
.home.page .author-info {
display: none;
}
.home.page .main {
background-color: transparent;
}

/*###### 問合せ ######*/
dl#Inquiry .hide,
div.inquiry .hide,
.flight_ticket .hide {
display: none;
}
dl#Inquiry .your-item-1 select,
dl#Inquiry .your-item-2 select,
dl#Inquiry select[name="your-item-1"],
dl#Inquiry select[name="your-item-2"],
div.inquiry .your-item-1 select,
div.inquiry .your-item-2 select,
div.inquiry select[name="your-item-1"],
div.inquiry select[name="your-item-2"],
.flight_ticket .your-item-1 select,
.flight_ticket .your-item-2 select,
.flight_ticket select[name="your-item-1"],
.flight_ticket select[name="your-item-2"] {
width: 75%;
}
dl#Inquiry dd:not(.before-interpretation),
div.inquiry dl dd:not(.before-interpretation),
.flight_ticket dl dd:not(.before-interpretation) {
margin-bottom: 20px;
}
dl#Inquiry dt,
div.inquiry dl dt,
.flight_ticket dl dt {
clear: left;
float: left;
width: 11em;
text-align: right;
}
dl#Inquiry dl.sub-item,
div.inquiry dl dl.sub-item,
.flight_ticket dl dl.sub-item {
margin-top: 10px;
}
dl#Inquiry dt.sub,
div.inquiry dl dt.sub,
.flight_ticket dl dt.sub {
margin-left: 2em;
}
dl#Inquiry dd,
div.inquiry dl dd,
.flight_ticket dd {
margin-left: 11em;
}
dl#Inquiry dd.sub,
div.inquiry dl dd.sub,
.flight_ticket dl dd.sub {
margin-left: 13em;
}
dl#Inquiry dd.before-interpretation,
div.inquiry dl dd.before-interpretation,
.flight_ticket dl dd.before-interpretation {
text-align: right;
}
p.submit,
p.send_button {
width: 10em;
margin-left: auto;
margin-right: auto;
}

p.submit input[type="submit"].wpcf7-submit,
p.send_button input[type="submit"].wpcf7-submit {
border-radius: 40px;
border: none;
font-weight: bold;
font-size: 100%;
background: #3fab00;
box-shadow: 0 3px 1px #113f8f;
/*text-shadow: 0 -1px #444;*/
color: #fff;
transition: 0.3s;
padding: 1em;
}
p.submit input[type="submit"].wpcf7-submit:before,
p.send_button input[type="submit"].wpcf7-submit:before {
font-family: "Font Awesome 5 Free";
content: "\f0e0";
font-weight: 900;
}
p.submit input[type="submit"].wpcf7-submit:hover,
p.send_button input[type="submit"].wpcf7-submit:hover {
/*background: #6db738;*/
background: #81d742;
box-shadow: 0 -3px 1px #113f8f;
transform: translateY(3px);
}
p.submit input[type="submit"].wpcf7-submit:focus,
p.send_button input[type="submit"].wpcf7-submit:focus {
outline: 0;
background: #3fab00;

}
dl#Inquiry input:focus,
dl#Inquiry textarea:focus,
dl.inquiry input:focus,
dl.inquiry textarea:focus,
div.inquiry dl input:focus,
div.inquiry dl textarea:focus,
.flight_ticket dl input:focus,
.flight_ticket dl textarea:focus {
border: 1px solid #1e73be;
outline: 0;
}
dl#Inquiry b,
div.inquiry dl b,
.flight_ticket dl b {
color: red;
}
/*** 航空券問い合わせ ***/
.number_of_people dd {
}
.number_of_people {
}
.number_of_people dd span {
vertical-align: top;
display: inline-block;
width: 10em;
}
.number_of_people select {
width: 6em;
}
.flight_ticket .aboutlcc span.fas {
margin-right: .5em;
color: #1e73be;
}
dl.inquiry .tel-num {
font-weight: bold;
color: #113f8f;
}
body.inquiry .entry-title:before {
content: "\f0e0";
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #ffd000;
}
/*** 非表示項目 ***/
.page-template-page-form .date-tags,
.page-template-page-form .eye-catch-wrap,
.page-template-page-form .sns-share,
.page-template-page-form .sns-follow,
.page-template-page-form .toc,
.page-template-page-form .breadcrumb,
.date-tags,
.post-32 .toc {
display: none;
}
/*###### プライバシーポリシー ######*/
dd.mail-form-dd input[name="e1"] {
width: 4em;
}
dd.mail-form-dd input[name="e2"] {
width: 4em;
}
dd.mail-form-dd input[type="button"] {
border-radius: 40px;
border: none;
background: #1066a3;
box-shadow: 0 3px 1px #ccc;
color: #fff;
transition: 0.3s;
padding: .5em 1em;
margin-top: 20px;
}
dd.mail-form-dd input[type="button"]:hover {
/*background: #6db738;*/
background: #0080ff;
box-shadow: 0 -3px 1px #ccc;
transform: translateY(3px);
}
dd.mail-form-dd input[type="button"]:focus {
outline: 0;
background: #1066a3;
}
dl.mail-form-dl dt {
clear: left;
float: left;
width: 8em;
}
dl.mail-form-dl dd {
margin-left: 8.5em;
}
/*###### トップへ戻るボタン ######*/
.go-to-top-button .fas.fa-plane,
.top-menu-icon .fas.fa-plane {
transform: rotate(-90deg);
}
/*###### reCAPTCHA v3 表示 ######*/
.grecaptcha-badge {
margin-bottom: 60px;
}
/*###### モバイルメニュー ######*/
.mobile-menu-buttons {
background-color: #fff;
box-shadow: 0 -4px 4px rgba(0,0,0,0.4);
}
.navi-menu-button .menu-button-in,
.mobile-menu-buttons .home-menu-button > a,
.search-menu-button,
.mobile-menu-buttons .top-menu-button > a,
.sidebar-menu-button .menu-button-in,
.mobile-menu-buttons .menu-item-type-custom .menu-button-in,
.mobile-menu-buttons .menu-button-in .menu-icon {
color: #224082;
}
.navi-menu-close-button,
.sidebar-menu-close-button {
color: #224082;
}
.mobile-menu-buttons .menu-button:hover {
}
.mobile-menu-buttons .navi-menu-button:hover,
.mobile-menu-buttons .home-menu-button:hover > a,
.mobile-menu-buttons .search-menu-button:hover,
.mobile-menu-buttons .top-menu-button:hover > a,
.mobile-menu-buttons .sidebar-menu-button:hover {
}
.mobile-menu-buttons .menu-button:hover {
background-color: #224082;
}
.mobile-menu-buttons .home-menu-button:hover .menu-button-in,
.mobile-menu-buttons .navi-menu-button:hover .menu-button-in,
.mobile-menu-buttons .home-menu-button:hover > a,
.mobile-menu-buttons .search-menu-button:hover,
.mobile-menu-buttons .top-menu-button:hover .menu-button-in,
.mobile-menu-buttons .top-menu-button:hover > a,
.mobile-menu-buttons .sidebar-menu-button:hover .menu-button-in,
.mobile-menu-buttons .menu-item-type-custom:hover .menu-button-in,
.mobile-menu-buttons .menu-button-in:hover .menu-icon {
color: #fff;
opacity: 1.0;
}
.mobile-menu-buttons .navi-menu-button .menu-caption .sub-text {
display: none;
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*481px以上*/
@media screen and (min-width: 481px) {
 .home.page .flex-container.button .flex-item span.item-title,
 .home.page .flex-container.button .flex-item:hover:before {
  font-size: calc(0.75rem + ((1vw - 4.81px) * 2.2642));
  min-height: 0vw;
 }
 .home.page .flex-container.button .flex-item span.item-description {
  font-size: calc(0.625rem + ((1vw - 4.81px) * 1.3836));
  min-height: 0vw;
 }
}
/*600px以上*/
@media screen and (min-width: 600px) {
 .home.page .flex-container.flow .flex-item span,
 .home.page .flex-container.flow li:not(:last-child).flex-item:after {
  font-size: calc(1rem + ((1vw - 6px) * 2.9586));
  min-height: 0vw;
 }
 .home.page .column-wrap p,
 .home.page .column-wrap dl {
 font-size: calc(1rem + ((1vw - 6px) * 0.7396));
 min-height: 0vw;
 }
 .entry-content h3:after {
 content: "";
 border-top: 1px solid;
 width: 3em;
 margin-left: .3em;
 }
}
/*640px以上*/
@media screen and (min-width: 640px) {
 .home.page .flex-wrapper {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin: 0;
 }
 .home.page .flex-wrapper > div {
  width: 49.5%;
  margin: 0;
 }
}
/*849px以上*/
@media screen and (min-width: 849px){
}
/*1024px以上*/
@media screen and (min-width: 1024px){
/* .mobile-menu-buttons {
 display: block;
 height: 30px;
 top: 40px;
 left: auto;
 right: 0;
 background: transparent;
 box-shadow: none;
 }
 .mobile-menu-buttons .navi-menu-button:not(:first-child) {
 width: 19rem;
 height: 40px;
 background-color: #1e73be;
 border-radius: 20px 0 0 20px;
 box-shadow: 0 4px 4px rgba(0,0,0,0.4);
 display: flex;
 justify-content: center;
 align-items: center;
 transform: translateX(11rem);
 transition: all 0.5s;
 }
 .mobile-menu-buttons .navi-menu-button:not(:first-child):hover {
 transform: translateX(0rem);
 }
 .mobile-menu-buttons .navi-menu-button:not(:first-child) .menu-button-in {
 display: block;
 float: left;
 width: 100%;
 height: 40px;
 position: relative;
 }
 .mobile-menu-buttons .navi-menu-button:not(:first-child) .menu-icon {
 display: block;
 height: 40px;
 display: flex;
 align-items: center;
 justify-content: flex-start;
 margin-left: .7rem;
 color: #fff100;
 transition: all 0.5s;
 }
 .mobile-menu-buttons .menu-item-type-custom .menu-icon:after {
 }
 .mobile-menu-buttons .menu-button:not(.navi-menu-button),
 .mobile-menu-buttons .navi-menu-button:first-child {
 display: none;
 }
 .mobile-menu-buttons .custom-menu-caption.menu-caption {
 position: absolute;
 top: 0;
 bottom: 0;
 left: 2.5rem;
 display: flex;
 align-items: center;
 justify-content: flex-start;
 color: #fff100;
 font-size: 80%;
 font-weight: bold;
 opacity: 1.0;
 }
 .mobile-menu-buttons .navi-menu-button:not(:first-child):hover .custom-menu-caption.menu-caption {
 color: #fff;
 transition: all 0.5s;
 }
 .custom-menu-icon:hover {
 opacity: 0.7;
 }
 .mobile-menu-buttons .navi-menu-button .menu-caption .sub-text {
 display: block;
 margin-left: 0.5rem;
 }*/
}
/*1276px以上*/
@media (min-width: 1276px) {
 .home.page .flex-container.flow .flex-item span,
 .home.page .flex-container.flow li:not(:last-child).flex-item:after {
 font-size: 36px;
 }
 .home.page .flex-container.button .flex-item span.item-title,
 .home.page .flex-container.button .flex-item:hover:before {
 font-size: 30px;
 }
 .home.page .flex-container.button .flex-item span.item-description {
 font-size: 21px;
 }
 .home.page .column-wrap p,
 .home.page .column-wrap dl {
 font-size: 21px;
 }
}
/*1023px以下*/
@media screen and (max-width: 1023px){
/*** フッター ***/
 .navi-footer-in {
 margin-left: auto;
 }
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}
@media screen and (max-width: 650px){
 /* Table Press */
 table#tablepress-2 th {
 overflow-x: auto;
 white-space: nowrap;
 }
 .tablepress-wrap {
 overflow: scroll;
 }
}
/*639px以下*/
@media screen and (max-width: 639px){
 .home.page .flex-container.flow li:not(:last-child).flex-item:after {
 }
 .home.page .flex-container.flow .flex-item span,
 .home.page .flex-container.flow li:not(:last-child).flex-item:after {
 font-size: calc(1.6875rem + ((1vw - 4.81px) * 5.0847));
 min-height: 0vw;
 }
 .home.page .column-wrap p,
 .home.page .column-wrap dl {
 font-size: calc(1.125rem + ((1vw - 4.81px) * 2.5424));
 min-height: 0vw;
 }
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*** ヘッダー ***/
  .header {
  background-image :none;
  }
 .home.page .flex-container.flow .flex-item span,
 .home.page .flex-container.flow li:not(:last-child).flex-item:after {
 font-size: 27px;
 }
 .home.page .flex-container.button .flex-item span.item-title,
 .home.page .flex-container.button .flex-item:hover:before {
 font-size: 21px;
 }
 .home.page .flex-container.button .flex-item span.item-description {
 font-size: 14px;
 }
 .home.page .column-wrap p,
 .home.page .column-wrap dl {
 font-size: 18px;
 }
 .home.page .flex-container.button .flex-item {
 width: 50%;
 }
 /*** 宿泊施設 ***/
 body.inn .dl-single-line.facility dt {
 float: none;
 width: 100% !important;
 text-align: left !important;
 }
 body.inn .dl-single-line.facility dd {
 margin-left: 0em !important;
 }
 body.inn .dl-single-line.policy dt {
 float: none;
 width: 100% !important;
 text-align: left !important;
 }
 body.inn .dl-single-line.policy dd {
 margin-left: 0em !important;
 }
 .page.inn .flex-container.photo {
 justify-content: center;
 }
 .page.inn .flex-container.photo .flex-item {
 width: 33.33333333%;
 }
 /*** 問い合わせ ***/
 div.inquiry dt,
 .flight_ticket dt,
 .dl-single-line.inquiry dt {
 float: none;
 width: 100% !important;
 text-align: left !important;
 }
 div.inquiry dd,
 .flight_ticket dd,
 .dl-single-line.inquiry dd {
 margin-left: 0em !important;
 }
 /*** 問い合わせリンクボタン ***/
 div.request-wrap {
 font-size: 150%;
 }
 a.inquiry-button {
 font-weight: 700;
 letter-spacing: 0em;
 font-size: 1.0rem;
 padding: 1.0rem 2.2rem 1.2rem 1.0rem;
 }
 a.inquiry-button i.fa {
 margin-right: 0.5rem;
 }
}
/*360px以下*/
@media screen and (max-width: 360px){
 .home.page .flex-container.flow .flex-item span,
 .home.page .flex-container.flow li:not(:last-child).flex-item:after {
 font-size: 20px;
 }
 .home.page .flex-container.button .flex-item span.item-title,
 .home.page .flex-container.button .flex-item:hover:before {
 font-size: 17px;
 }
 .home.page .flex-container.button .flex-item span.item-description {
 font-size: 13px;
 }
 /*** 宿泊施設 ***/
 .page.inn .flex-wrap .fas {
 color: #fff;
 position: absolute;
 top: 0;
 bottom: 0;
 z-index: 1;
 margin: auto;
 display: flex;
 align-items: center;
 justify-content: center;
 opacity: 0.8;
 }
 .page.inn .flex-wrap .fa-chevron-left {
 left: 1%;
 }
 .page.inn .flex-wrap .fa-chevron-right {
 right: 1%;
 }
 .page.inn .flex-container.photo {
 flex-wrap: nowrap;
 justify-content: flex-start;
 scroll-snap-type: x mandatory;
 scroll-snap-points-x: repeat(50%);
 width: 100%;
 -webkit-overflow-scrolling: touch;
 overflow-scrolling: touch;
 overflow-x: auto;
 }
 .page.inn .flex-container.photo .flex-item {
 scroll-snap-align: center;
 height: 100%;
 width: 50%;
 flex: none;
 }
}
