﻿@charset "UTF-8";

/*--------------------------------------
base
--------------------------------------*/
* {
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
}

html{
    overflow:auto;
    height:100%; 
}
body{
	width: 100%;
	margin: 0;
	padding: 0;
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 15px;
	text-align: left;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

p, ul, li, dl, dd, dt, th, td{
	font-size:12px;
}

textarea,input {
	padding:2px;
}

img {
	border: 0;
	vertical-align: bottom;
}

ul {
	list-style-type: none;
	padding:0;
	margin:0;
}

li {
	list-style-position: outside;
     	line-height:170%;
}

form {
	margin:0;
	padding:0;
    text-align:center;
}

div{
	display:block;
}

object,
embed {
	vertical-align: top;
}

a img.fade {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    -ms-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
}

a {
	color: #333;
}
a:hover img.fade{
  opacity:0.5;
  filter: alpha(opacity=50);
}


div#wrap {
	width:100%;
	margin: 0 auto;
	text-align:center;
	padding:0;
	zoom: 1;
}
body > div#wrap{     height:auto;
	overflow-y: hidden; }


/* PC */
.spOnly {
		display: none;
}
div#wrap {
	padding-top: 141px;
}

/*--------------------------------------
bootstrap
--------------------------------------*/
.no-gutter .row{
    margin-right: 0;
    margin-left: 0;
}
.no-gutter div[class*='col-'] {
    padding-right: 0;
    padding-left: 0;
}


.row-space0 {
    margin-right: 0;
    margin-left: 0;
}

.row-space0 div[class^='col-'] {
    padding-right: 0;
    padding-left: 0;
}

.row-space5 {
    margin-right: -5px;
    margin-left: -5px;
}

.row-space5 > div[class^='col-'] {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 5px;
    padding-left: 5px;
}

.row-space10 {
    margin-right: -10px;
    margin-left: -10px;
}

.row-space10 > div[class^='col-'] {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 10px;
    padding-left: 10px;
}

.row-space15 {
    margin-right: -15px;
    margin-left: -15px;
}

.row-space15 > div[class^='col-'] {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 15px;
    padding-left: 15px;
}

.reset-gutter {
    padding-top:0 !important;
    padding-bottom:0 !important;
}

/* common */

.container,
.container * {
    box-sizing:border-box;
}
.container {
    max-width:1030px;
    margin:auto;
}
.img img {
    max-width:100%;
}
*[class*="trim-"] {
    position:relative;
    overflow:hidden;
}
*[class*="trim-"]:before {
    content:'';
    display:block;
    padding-top:75%;
}
*[class*="trim-"] img {
    position:absolute;
    top:-100%;
    bottom:-100%;
    right:-100%;
    left:-100%;
    margin:auto;
    width:100%;
    height:auto;
}
.trim-square:before {
    padding-top:100%;
}
.trim-rect:before {
    padding-top:50%;
}
.trim-4by1:before {
    padding-top:25%;
}

/* header 
---------------------------------------------------------*/
.pcHeader{
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 1000;
	transition: .5s;
}
.pcHeader.hide{
	transform: translateY(-100%);
}
#header{
	width: 100%;
	margin: 0 auto;
	background-color: #FFF;
}
#header .inner{
    display:flex;
    display:-ms-flexbox;
    justify-content:space-between;
    -ms-flex-pack:justify;
    align-items:center;
    -ms-flex-align:center;
    width:100%;
	max-width: 1064px;
	height: 96px;
	margin: 0 auto;
}
#header .inner h1{
    flex:0 0 auto;
	margin-left: 32px;
    margin-right:68px;
    margin-bottom:0;
}
#header .inner h1 img{
    width: 196px;
    height: auto;
}
#header .inner .daiwa{
	float: right;
	width: 154px;
	padding-top: 38px;
	margin-right: 32px;
}
#header .inner .daiwa img{
	width: 100%;
	height: auto;
	}
#header .inner .header-contact {
    margin-right:32px;
}






/* ナビゲーション
--------------------------------------------*/
#header + nav {
	background-color: #222;
}
nav{
	/*padding: 10px 0;*/
	z-index: 1200;
    overflow:auto;
}
nav #gNavi{
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    justify-content:center;
    -ms-flex-pack:center;
	max-width: 1200px;
    width:100%;
	margin: 0 auto;
	padding: 0;
	position: relative;
	z-index: 1000;
}
nav #gNavi ul{
    display:flex;
    display:-ms-flexbox;
    flex:1 1 auto;
    -ms-flex:1 1 auto;
	list-style-type: none;
    
}
nav #gNavi ul > li {
    border-left:1px solid #555;
}
nav #gNavi ul > li:last-of-type {
    border-right:1px solid #555;
}
nav #gNavi li {
    display:flex;
    display:-ms-flexbox;
    width:25%;
	padding: 0px;
	margin: 0px;
	text-align: left;
}
nav #gNavi li a {
	font-size: 18px;
    width:100%;
	line-height:1.4;
	color: #fff;
	padding: 10px 0 10px 0;
	position: relative;
	text-decoration: none;
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    justify-content:center;
    -ms-flex-pack:center;
	transition: .3s;
}
nav #gNavi li.current a,
nav #gNavi li a:hover{
    background-color: #fa0046;
	text-decoration: none;
}

nav #gNavi .bt{
	float: right;
	margin: 0 0 0 20px;
	width: 188px;
}
nav #gNavi .bt a{
	padding: 11px 0 10px;
	display: block;
	background-color: #fa0046;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	font-size: 18px;
	line-height: 100%;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	-webkit-transition: opacity 0.3s ease-out;
	-moz-transition: opacity 0.3s ease-out;
	-ms-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
	position: relative;
}
nav #gNavi .bt a:hover{
	opacity:0.5;
  filter: alpha(opacity=50);
	text-decoration: none;
}



/* パンくず 
---------------------------------------------------------*/
.pankuzu{
	margin: 0 auto;
    width:calc(100% - 30px);
	max-width: 1000px;
	font-size: 12px;
	text-align: left;
	padding: 13px 0 10px;
}



/* フッター 
---------------------------------------------------------*/
.footer{
    display:flex;
    display:-ms-flexbox;
	margin: 0 auto;
	max-width: 1064px;
    height:96px;
	font-family: "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
}
.footLogo {
    align-self:center;
    -ms-flex-item-align:center;
    flex:0 0 auto;
    -ms-flex:0 0 auto;
	margin:0 32px;
}
.footLogo img {
    width:171px;
}
.footer .footLeft{
	display:flex;
	display:-ms-flexbox;
    flex-direction:column;
    -ms-flex-direction:column;
    margin-right:auto;
    padding-top:24px;
}
.footer .footLeft ul{
    display:flex;
    display:-ms-flexbox;
    flex-wrap:wrap;
    -ms-flex-wrap:wrap;
}
.footLeft a {
	font-size: 11px;
    color:#4d4d4f;
}
.footer .footLeft li::after{
	content: "｜";
    color:#000;
}
.footer .footLeft li:last-child::after{content: none;}
.footer .footLeft li a:hover{text-decoration: underline;}
.footer .footLeft ul.daiwa{
    margin-top:15px;
}
.footer .footLeft ul.daiwa li{
	font-size: 11px;
}
.footer .footRight{
    padding-top:24px;
	margin-right: 32px;
}
.footer .footRight .fLogo{
    line-height:0;
	text-align: right;
}
.footer .footRight .fLogo img{
	width: auto;
	height: 12px;
}
.footer .footRight .copyright{
    margin-top:15px;
	font-size: 11px;
	color: #4D4D4F;
	text-align: right;
    line-height:1;
}
.splinks {
    display:none;
}
.spFooterMenu {
    display:none;
}



@media screen and (max-width: 750px){
/* SP */
.pcOnly {
		display: none;
}
.spOnly {
	display: block;
}

div#wrap {
	padding-top: 0;
}

/* header 
---------------------------------------------------------*/
.pcHeader{
	position: static;
}
.pcHeader.hide{
	transform: translateY(0%);
}
#header{
	width: 100%;
    height:auto;
	margin: 0 auto;
	background-color: #FFF;
}
#header .inner{
    align-items:center;
    -ms-flex-align:center;
	width: 100%;
	height: 63px;
	margin: 0 auto;
	position: relative;
    border-bottom: 3px solid #b4b4b4;
}
#header .inner h1{
	float: none;
    margin-left:9px;
    margin-top:3px;
    padding-top:0;
}
#header .inner h1 img{
    width: 110px;
    height:33px;
    vertical-align:middle;
}
#header .inner .daiwa{
	float: right;
	width: 90px;
	padding-top: 0;
	margin-right: 0;
	position: absolute;
	top: 46%;
	right: 14px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
#header .inner .daiwa img{
	width: auto;
	height: 12px;
}


.hMenuIcBox{
	width: 100%;
	height: 4em;
	background-color: #222;
	position: relative;
	z-index: 1000;
}
.hMenuIcBox.spHeader.fixed{
	position: fixed;
	z-index: 1000;
	top: 0px;
}
.hMenuIcBox #hMenuBt{
	width: 28px;
	height: auto;
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	text-align: right;
}
.hMenuIcBox #hMenuBt img{
	width: 100%;
	height: auto;
}
.hMenuIcBox #hMenuBt span{
	font-size: 62%;
	line-height: 100%;
	color: #fff;
	display: block;
	text-align: center;
	padding-top: 0.5em;
}
.hMenuIcBox .contact-btn {
    color:#fff;
    display:inline-flex;
    display:-ms-inline-flex;
    margin:7px;
    font-size:14px;
    padding:10px 14px 9px;
    background:#fff !important;
    color:#000 !important;
}





/* ナビゲーション
--------------------------------------------*/
#hMenu{
	background-color: #222;
	width: 100%;
	position: absolute;
	z-index: 10000;
	top: 57px;
    height:calc(100vh - 57px);
	display: block;
}
ul#hNaviSp{
	margin: 0 auto;
	width: 90%;
	padding:30px 0px 15px;
	box-sizing: border-box;
}
ul#hNaviSp li{
	font-size: 140%;
	text-align: left;
	margin-bottom: 0.5em;
}
ul#hNaviSp li a{
	display: block;
	padding: 1em 5%;
	text-decoration: none;
	color: #333;
	background-color: #FFF;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
    text-align:center;
}
ul#hNaviSp li a span{
	padding-right: 5px;
}
ul#hNaviSp li.contact a{
    font-weight:bold;
    text-align:center;
	color: #FFF;
	background-color: #fa0046;
}
ul#hNaviSp li.contact a span{
	font-size: 90%;
	padding-right: 5px;
}

.spHeaderMenu {
    width:90%;
    margin:0 auto;
}
.spHeaderMenu li + li {
    margin-top:15px;
}
.spHeaderMenu a {
    display:block;
    color:#fff;
    font-size:16px;
    text-decoration:none !important;
}
.spHeaderMenu a:before {
    content:'\f105';
    margin-right:5px;
    font: normal normal normal 14px/1 FontAwesome;
    vertical-align:1px;
}



/* パンくず 
---------------------------------------------------------*/
.pankuzu{
	display: none;
}




/* フッター 
---------------------------------------------------------*/
.footer{
	margin: 0 auto 0;
	width: 100%;
    height:45px;
	font-family: "Droid Sans", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, Osaka, sans-serif;
	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	border-top: 2px solid #FA0046;
}
.footLogo {
    display:none;
}
.footLogo img {
    width:120px;
    padding:20px 0;
}
.footer .footLeft{
	float: none;
	width: 100%;
	height: 8px;
	display: none;
	padding: 0;
	margin: 0;
}

.footer .footRight .copyright {
    margin-top:8px;
    line-height:1;
    text-align:center;
    font-size:10px;
}
.footer .footLeft ul.pcOnly{
	display: none;
}
.footer .footLeft li{
	float: left;
	margin: 0 0px;
	padding: 0 1px;
	font-size: 10px;
}
.footer .footLeft li::after{
	content: "｜";
}
.footer .footLeft li:last-child::after{content: none;}
.footer .footLeft li a{color: #4D4D4F;text-decoration: none;}
.footer .footLeft li a:hover{text-decoration: underline;}
.footer .footLeft ul.daiwa{
	height: 0em;
}
.footer .footLeft ul.daiwa{
	margin: 0 auto;
	padding: 2px 0 0;
	width: 100%;
	display: flex;
	justify-content: center;
}
.footer .footLeft ul.daiwa li{
	font-size: 10px;
	
}
.footer .footLeft ul.daiwa li.pcOnly{
	display: none;
}
.footer .footRight{
    float: none;
    width: 100%;
    margin: 0 auto;
    padding-top:7px;
    font-size:10px;
}
.footer .footRight .fLogo{
	display: none;
}
.footer .splinks {
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    justify-content:center;
    -ms-flex-pack:center;
    flex-wrap:wrap;
    line-height:1;
}
.footer .splinks span {
    padding:0 10px;
}

}
@media(max-width:550px) {
    .spFooterMenu > ul {
        width:100%;
    }
}



/* other
---------------------------------------------------------*/
.clearfix:after {  
  content: ".";   
  display: block;   
  height: 0;   
  clear: both;   
  visibility: hidden;  
}
.clearfix { display: inline-table; }  
/* Hides from IE-mac \*/  
* html .clearfix { height: 1%; }  
.clearfix { display: block; }  
/* End hide from IE-mac */  
  



/* main */
.breadcrumbs{
    border: solid 1px #ccc;
    border-width: 1px 0;
}
.breadcrumbs nav {
    background:none;
}
.breadcrumbs ul,
.breadcrumbs li{
    margin: 0;
    padding: 0;
}
.breadcrumbs a{
    color: #9b4dca;
    text-decoration: none;
}
.breadcrumbs a:hover{
    color: #606c76;
}
.breadcrumbs ul{
    display: flex;
    display: -ms-flexbox;
    margin: auto;
}
.breadcrumbs li{
    list-style: none;
    font-size: 14px;
    height: 30px;
    line-height: 30px;
    margin-right: 35px;
    position: relative;
}
.breadcrumbs li:before,
.breadcrumbs li:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    border-top: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid transparent;
}
.breadcrumbs li:before{
    right: -40px;
    border-left: 15px solid #ccc;
}
.breadcrumbs li:after{
    right: -39px;
    border-left: 15px solid #fff;
}
.active a{
    color: #000;
}

.main-visual-wrap {
    background:#000;
}
.main-visual {
    position:relative;
    height:570px;
    background:url(../images/main-top.jpg) no-repeat center;
    background-size:cover;
}
.main-txt {
    padding-top:50px;
    text-align:left;
    color:#fff;
}
.main-txt h2 {
    font-size:48px;
    text-shadow:0px 0px 13px #353535,
    0px 0px 13px #353535;
	text-align:center;
}
.main-txt p {
    font-size:24px;
    text-shadow:0px 0px 13px #353535,
    0px 0px 13px #353535;
}

.page-visual {
    height:300px;
}
.page-kokunai .page-visual {
    background:url(../images/main-kokunai.jpg) center no-repeat;
    background-size:cover;
}
.page-kaigai .page-visual {
    background:url(../images/main-kaigai.jpg) center no-repeat;
    background-size:cover;
}
.page-ryugaku .page-visual {
    background:url(../images/main-ryugaku.jpg) center no-repeat;
    background-size:cover;
}
.page-houjin .page-visual {
    background:url(../images/main-houjin.jpg) center no-repeat;
    background-size:cover;
}
.page-ob .page-visual {
    background:url(../images/main-ob.jpg) center no-repeat;
    background-size:cover;
}
.page-staff .page-visual {
    background:url(../images/main-staff.jpg) center no-repeat;
    background-size:cover;
}
.page-visual-txt {
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    background:rgba(0, 0, 0, .3);
    padding:25px;
    text-align:left;
}
.page-icon {
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    flex:0 0 auto;
    -ms-flex:0 0 auto;
    margin-right:15px;
    padding-right:15px;
}
.page-icon img {
    width:100px;
    height:100px;
}
.page-card {
    margin-right:20px;
}
.page-card img {
    width:210px;
    height:auto;
}
.page-kokunai .page-icon {
    border-right:8px solid #94e732;
}
.page-kaigai .page-icon {
    border-right:8px solid #44c6ed;
}
.page-ryugaku .page-icon {
    border-right:8px solid #f4a950;
}
.page-houjin .page-icon {
    border-right:8px solid #f3a6e9;
}
.page-txts {
    display:flex;
    display:-ms-flexbox;
    flex-direction:column;
    -ms-flex-direction:column;
    justify-content:center;
    -ms-flex-pack:center;
}
.page-visual-txt h2 {
    color:#fff;
    font-size:32px;
    text-shadow:0px 0px 13px #000,
    0px 0px 13px #000;
}
.page-visual-txt p {
    color:#fff;
    font-size:20px;
    margin-bottom:0;
    text-shadow:0px 0px 13px #000,
    0px 0px 13px #000;
}

.frame-area {
    width:100% !important;
    overflow:auto !important;
    -webkit-overflow-scrolling:touch !important;
}
.frame-area iframe {
    width:100%;
}
 #modal-frame {
   height:630px;
}
.close-btn {
    padding: 1rem;
    margin: -1rem -1rem -1rem auto;
    background-color: transparent;
    border: 0;
    -webkit-appearance: none;
    float: right;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}

#recommended-info-frame {
    height: 440px;
}
#news-frame {
    height: 300px;
}
#bnr-slider-frame {
    height:230px;
}
#recommended-kaigai-frame ,
#recommended-ryugaku-frame {
    height:440px;
}

#ob-frame {
    height:6800px;
}
#staff-frame {
    height: 5500px;
}

@media(max-width:991px) {
    #ob-frame {
        height: 7400px;
    }
    #staff-frame {
        height: 6000px;
    }
}

@media(max-width:767px) {
    #recommended-info-frame {
        height: 210vw;
    }
    #recommended-kaigai-frame,
    #recommended-ryugaku-frame {
        height: 210vw;
    }
    #ob-frame {
        height: 7700px;
    }
    #staff-frame {
        height: 6500px;
    }
     #modal-frame {
       height:780px;
    }
}
@media(max-width:750px) {
    .main-visual {
        height:300px;
    }
    .main-txt {
        padding-top:30px;
    }
	.main-txt .container {
		padding-right:0;
		padding-left:0;
	}
    .main-txt h2 {
        font-size:32px;
    }
    .main-txt p {
        font-size:20px;
    }

    .page-visual {
        height:auto;
        min-height:200px;
    }

    .page-visual-txt {
        margin-right:-15px;
        margin-left:-15px;
        justify-content:center;
        -ms-flex-pack:center;
        padding:15px;
    }
    .page-visual-txt h2 {
        font-size:24px;
        text-align:center;
    }
    .page-visual-txt p {
        display:none;
        font-size:16px;
    }
    .page-icon ,
    .page-card {
        display:none;
    }

    #news-frame {
        height: 400px;
    }
}

@media(max-width:685px) {
    #ob-frame {
        height: 8000px;
    }
}
@media(max-width:575px) {
    #bnr-slider-frame {
        height: 260px;
    }
    #news-frame {
        height: 450px;
    }
    #recommended-info-frame {
        height: 240vw;
    }
    #recommended-kaigai-frame,
    #recommended-ryugaku-frame {
        height: 240vw;
    }
    #ob-frame {
        height: 8600px;
    }
    #staff-frame {
        height: 7000px;
    }
    #modal-frame {
        height:810px;
    }
}
@media(max-width:500px) {
    #staff-frame {
        height: 7300px;
    }
    #ob-frame {
        height: 9000px;
    }
}

@media(max-width:400px) {
    #recommended-kaigai-frame,
    #recommended-ryugaku-frame {
        height: 270vw;
    }
    #ob-frame {
        height: 10070px;
    }
    #staff-frame {
        height: 8040px;
    }
    #modal-frame {
        height:840px;
    }
}



.top-message-wrap {
    padding-top:25px;
    padding-bottom:25px;
    background:#eeeeee;
}
.top-message-wrap .container {
    position:relative;
}
.top-message-wrap .container:after {
    content:'';
    position:absolute;
    display:block;
    top:0;
    bottom:0;
    right:0;
    left:0;
    background:url(../images/top-message-back.png) no-repeat center right;
    background-size:contain;
}
.top-message-wrap h3 {
    font-size:20px;
    font-weight:bold;
}
.top-message-wrap p {
    margin-bottom:0;
    font-size:15px;
    line-height:1.7;
}

p.top-message-main {
	margin-top:10px;
	font-weight:bold;
	font-size:17px;
}


.page-visual .txt {
    padding:15px;
}
.main-panels-wrap {
    padding: 10px 0;
    overflow:hidden;
}
.main-panels-wrap > .alert-danger {
    margin-bottom:60px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
}
.main-panels-wrap > .alert-danger .second-block {
    display:block;
    margin-top:20px;
}
.main-panel-card {
    display:flex;
    display:-ms-flexbox;
    justify-content:flex-start;
    -ms-flex-pack:start;
    text-align:left;
    text-decoration:none !important;
    border:1px solid #dedede;
}
.main-panel-card > div {
    padding:10px;
}
.main-panel-card .txts {
    display:flex;
    display:-ms-flexbox;
    justify-content:flex-start;
    -ms-flex-pack:start;
    align-items:flex-start;
    -ms-flex-align:start;
    flex-direction:column;
    -ms-flex-direction:column;
    flex:1 1 100%;
    -ms-flex:1 1 100%;
}
.main-panel-card .txts .txt {
    max-width:100%;
    color:#333 !important;
}
.main-panel-card .img {
    max-width:200px;
    width:100%;
    flex:0 0 auto;
    -ms-flex:0 0 auto;
    background:#eee;
    padding:50px;
}
.main-panel-card > img {
    width:100%;
    height:auto;
}

.main-panel-card.card-01 .img {
    background:#94e732;
}
.main-panel-card.card-02 .img {
    background:#44c6ed;
}
.main-panel-card.card-03 .img {
    background:#f4a950;
}
.main-panel-card.card-04 .img {
    background:#f3a6e9;
}
.main-panel-card .ttl {
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    font-weight: bold;
    font-size: 20px;
    color:#333 !important;
}
.main-panel-card .ttl img {
    width:30px;
    height:30px;
    margin-right:10px;
}
.main-panel-card .btn {
    margin:auto 0 0 auto;
    padding:5px 10px;
    color:#fff;
    font-size:18px;
    background-color: #fa0046;
}
.main-panel-card .btn:before {
    content:'\f054';
    font-family: FontAwesome;
    font-size:14px;
    vertical-align:middle;
}
@media(max-width:750px) {
    .top-message-wrap h3 {
        font-size:18px;
    }
    .top-message-wrap p {
        font-size:14px;
    }
}

.sect-ttl {
    width:100%;
    align-self:flex-start;
    -ms-flex-item-align:start;
    padding-top:40px;
    font-size:25px;
    margin-bottom:40px;
    font-weight:bold;
}
.sect-ttl > i {
    margin-right:10px;
    color:#fa0046;
}
.sect-ttl + p {
    margin-bottom:22px;
    text-align:center;
    font-size:17px;
}
.main-panel {
    display:block;
    position:relative;
    text-decoration:none !important;
}
.main-panels .trim-rect:before {
    padding-top:calc(50% - 10px);
}
.main-panel > .common-panel-ttl {
    position:absolute;
    border-bottom:2px solid #fa0046;
    top:0;
    left:0;
    z-index:1;
    font-size:1.3rem;
    font-weight:bold;
    padding:10px;
}
.main-panel > i {
    font-size:6rem;
    font-weight:bold;
    padding:10px;
}
.main-panel > .top-panel-ttl {
    margin-bottom:0;
    font-weight:bold;
    font-size:20px;
    padding-top:15px;
    padding-bottom:15px;
    border-bottom:2px solid;
}
.top-panels {
}
.top-panels .main-panel {
    background: #f1f1f1;
    border-radius:6px;
}
.top-panels .main-panel:hover {
    background:#fa0064;
}
.top-panels .main-panel > div {
    padding:30px;
}
.top-panels .main-panel > div > img {
    width:100%;
    height:auto;
    max-width:256px;
}
.top-panels .main-panel > div > img:last-of-type {
    display:none;
}
.top-panels .main-panel:hover > div > img:last-of-type {
    display:inline-block;
}
.top-panels .main-panel:hover > div > img:first-of-type {
    display:none;
}
.top-panels .main-panel:hover * {
    color:#fff;
}
.topics-panels > div {
    display:flex;
    display:-ms-flexbox;
    flex-direction:column;
    -ms-flex-direction:column;
    justify-content:center;
    -ms-justify-content:center;
    width:100%;
}
.topics-panel {
    flex:1 1 auto;
    -ms-flex:1 1 auto;
    display:block;
    text-decoration:none !important;
    padding:10px;
    background:#eee;
}
.topics-panel .ttl {
    text-align:center;
    font-size:14px;
    font-weight:bold;
    margin-bottom:5px;
}
.topics-panel .txt {
    text-align:left;
    font-size:12px;
    margin-top:5px;
    margin-bottom:0;
    word-break:break-all;
}


.tab-menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.tab-menu li {
    width:33.33333%;
}
.tab-menu > li + li {
    border-left:2px solid transparent;
}
.tab-menu a {
    display: -ms-flexbox;
    display: flex;
    align-items:center;
    -ms-flex-align:center;
    justify-content:center;
    -ms-flex-pack:center;
    width:100%;
    padding:12px;
    font-size:16px;
    font-weight:bold;
    background:#f1f1f1;
    color:#000;
    text-decoration:none !important;
}
.tab-menu a.active {
    background-color: #fa0046;
    color:#fff;
}
.tab-menu a span {
    font-size:6px;
    margin-left:6px;
}
.info-tabs-box {
}
.info-tab:not(.active) {
    display:none;
}
.info-lines > a {
    text-decoration:none;
}
.info-line {
    display: -ms-flexbox;
    display: flex;
    align-items:center;
    -ms-flex-align:center;
    width:100%;
    padding:12px;
    text-align:left;
    font-size:14px;
    border-bottom: 1px solid #e6e6e6;
    text-decoration:none !important;
	cursor:pointer;
}
a > .info-line:hover {
    background:#e6e6e6;
}
.info-line .date {
    flex:0 0 auto;
    -ms-flex:0 0 auto;
}
.info-line .tag {
    margin:0 5px;
    padding:5px 8px;
    background:#eee;
    font-weight:bold;
    font-size:14px;
    color:#fff;
    flex:0 0 auto;
    -ms-flex:0 0 auto;
}
.info-line .info {
    background-color: #fa0046;
}
.info-line .new {
    background-color: blue;
}
.info-line .event {
    background-color: green;
}
.footer-wrap {
    border-top: 2px solid #FA0046;
}
.footer-wrap li ,
.footer-wrap a {
    text-decoration:none;
    line-height:1;
}
.btm-nav-wrap {
    padding:30px 0 60px;
}
.btm-nav {
    margin:auto;
}
.btm-nav * {
    box-sizing:border-box;
}
.contact-logos > p {
    font-size:1.75rem;
    color:#fff;
}
.contact-logos > p i {
    color:#fa0063;
    font-size:2.3rem;
    margin-right:5px;
    vertical-align:middle;
}
.contact-pane {
    display: flex;
    display: -webkit-flex;
    background-color: #fff;
    border: 2px solid #e6e6e6;
}
.contact-pane:before {
    content:'';
    flex:0 0 auto;
    -ms-flex:0 0 auto;
    display:block;
    width:210px;
    margin-right:-20px;
    background:url(../images/contact_bg.png) center left no-repeat;
    background-size:contain;
}
.contact-in {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    flex-direction:column;
    -ms-flex-direction:column;
    width: 100%;
    padding:30px 20px;
    text-align:left;
}
.contact-left {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    width:100%;
    border-bottom:1px solid #eee;
    margin-bottom:30px;
    padding-bottom:30px;
}
.contact-ob-txt {
    text-align:left;
    padding-top: 40px;
    font-size: 25px;
    margin-bottom: 30px;
}
.contact-left .logo img {
    width:120px;
}
.contact-right {
    display: flex;
    display: -webkit-flex;
    align-items:center;
    -ms-flex-align:center;
    flex:1 1 auto;
    -ms-flex:1 1 auto;
     width:100%;
}
.contact-right > p {
    display: flex;
    display: -webkit-flex;
    align-items:center;
    -ms-flex-align:center;
    align-self:stretch;
    -ms-flex-item-align:stretch;
    padding:5px 15px;
    font-size:16px;
    font-weight:bold;
    margin-bottom:0;
    background:#eee;
}
.contact-time {
    text-align:right;
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
}
.contact-time > p {
    margin-bottom:0;
}
.contact-time > p:first-of-type {
    font-size:18px;
    margin:0 20px;
}
.contact-time i {
    color:#fa0064;
    margin-right:5px;
}
.contact-txt {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content:center;
    -ms-flex-pack:center;
    margin-left:30px;
}
.contact-txt p {
    font-size: 1.4rem;
    line-height:1.4;
    margin:0;
}
.contact-txt .tel span {
    white-space:nowrap;
}
.contact-txt .num {
    color:#fa0046;
    font-weight:bold;
	text-decoration:none !important;
}
.contact-btn {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content:center;
    -ms-flex-pack:center;
    padding:11px 15px 10px;
    background-color: #fa0046;
    font-weight:bold;
    font-size:16px;
    color:#fff !important;
    text-decoration:none !important;
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    -ms-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    border-radius:5px;
}
.contact-btn i {
    vertical-align:middle;
    font-size:24px;
    margin-right:10px;
}
.contact-right .contact-btn {
    margin-left:auto;
    white-space:nowrap;
}

@media(max-width:750px) {
    .sect-ttl + p {
        font-size:15px;
    }
}

/* bnr */

.bnr-slider-wrap {
    padding:40px 0 40px 0;
    background-color: #f1f1f1;
}
.bnr-slider-wrap > p {
    margin-bottom:15px;
    font-size:1.25rem;
    color:#000;
    text-align:center;
}


#bnr-slider .sp-slide div {
    position: absolute;
    top: 0;
    bottom: 0;
    overflow: hidden;
    width: 100%;
    height: 60px;
    margin: auto;
}

#bnr-slider .sp-slide div img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: auto;
    height: 100%;
    margin: auto;
}
#bnr-slider .sp-arrows {
    margin-top:0;
    top:0;
}
#bnr-slider .sp-arrow {
    width:25px;
    height:100px;
    z-index:1000;
}
#bnr-slider .sp-arrow:before ,
#bnr-slider .sp-arrow:after {
    display:none;
    content:'';
}
#bnr-slider .sp-previous-arrow {
    background:url(../images/bottom-hidari.png) no-repeat center;
    background-size:cover;
    left:0;
}
#bnr-slider .sp-next-arrow {
    background:url(../images/bottom-migi.png) no-repeat center;
    background-size:cover;
    right:0;
}

/* info */

.search-panel {
    width:50%;
    padding:15px;
}
.search-panel > h2 {
    color:#fff;
}
.search-tab {
    display:flex;
    display:-ms-flexbox;
    justify-content:space-between;
    -ms-flex-pack:justify;
    padding:15px;
}
.search-tab a {
    width:calc(33.333333% - 1.33px);
    padding:1rem .25rem;
    text-align:center;
    font-size:.9375rem;
    font-weight:bold;
    color:#fff;
    white-space:nowrap;
}
.search-tab > a {
    background:#1f286e;
}
.search-content {
    padding:1.25rem;
    background:rgba(0, 0, 0, .5);
    color:#fff;
}

#pickup-tab-content .tab-pane {
    height:0;
    overflow:hidden;
    display:block;
}
#pickup-tab-content .tab-pane.active {
    height:auto;
}
#PersonPanel {
    margin-right:-5px;
    margin-left:-5px;
}
#PersonPanel > div {
    width:33.333333% !important;
    padding:5px;
}

/*kokunai*/

.search-tour-panel {
    display:flex;
    display:-ms-flexbox;
    background:#fff;
    padding:25px;
}
.search-img {
    flex:0 0 auto;
    width:300px;
    padding-right:20px;
}
.search-img img {
    width:100%;
    height:auto;
}
.search-txts {
    text-align:right;
}
.search-ttl {
    margin-bottom:5px;
    font-weight:bold;
    font-size:18px;
    text-align:left;
}
.search-txt {
    margin-bottom:15px;
    font-size:15px;
    text-align:left;
    word-break:break-all;
}
.search-txts .contact-btn {
    font-size:14px;
    padding:8px 10px 7px;
    display:inline-block;
}
.recommentd-panel {
    background:#;
}
.recommend-panel .content {
    padding:10px;
    background:#eee;
}
.recommend-panel .ttl {
    text-align:center;
    font-size:14px;
    font-weight:bold;
    margin-bottom:5px;
}
.recommend-panel .txt {
    text-align:left;
    font-size:12px;
    margin-top:5px;
    margin-bottom:0;
}
.recommend-btn {
    display: flex;
    display: -ms-flexbox;
    align-items: center;
    -ms-flex-align: center;
    justify-content: center;
    -ms-flex-pack: center;
    max-width: 11.25rem;
    margin:12px auto 0;
    padding: .5rem .75rem .5rem .5rem;
    position: relative;
    border-radius: 3rem;
    font-size: .75rem;
    font-weight: bold;
    color: #fff ! important;
    background: #fa0064;
    text-decoration:none !important;
}
.recommend-btn:after {
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    right: .725rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.5rem;
}

.bland-panel {
    border:2px solid #eee;
    padding:10px 10px 10px;
}

.bland-panel + .bland-panel {
    margin-top:60px;
}

.bland-ttl-area {
	padding:20px 10px;
	background:#eee;
	text-align:center;
}
.bland-ttl-area h4 {
    font-size:20px;
    font-weight:bold;
    margin-bottom:5px;
}

.bland-ttl-area p {
	margin-bottom:0;
	font-size:16px;
	font-weight:bold;
	color:#fa0046;
}

.bCompany {
    display:flex;
    display:-ms-flexbox;
    flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    justify-content:center;
    -ms-flex-pack:center;
	margin-top:8px;
	margin-bottom:-2px;
	margin-left:-2px;
	margin-right:-2px;
}
.bCompany li {
	padding:2px;
	width:20%
}
.bCompany li a {
	display:block;
	border:1px solid #eee;
	text-align:center;
}
.bCompany li img {
    max-width:100%;
    height:auto;
}

@media(max-width:1199px) {
	.bCompany li {
		width:25%;
	}
}

@media(max-width:750px) {
	.search-tabs-wrap {
		overflow:auto;
		margin-right:-15px;
		margin-left:-15px;
	}
    .search-tour-panel {
        flex-direction:column;
        -ms-flex-direction:column;
		padding:15px;
    }
    .search-img {
        margin:auto;
        padding-right:0;
        padding-bottom:15px;
        max-width:100%;
    }
    .search-img img {
        max-width:100%;
    }
	.bCompany li {
		width:33.3333333%;
	}
}

@media(max-width:575px) {
	.bCompany li {
		width:50%;
	}
}


/* kaigai */

.white-frame-panel {
    background:#fff;
    padding:25px;
}
.white-frame-panel p {
    font-size:18px;
}
.frame-panel {
    border:3px solid #eee;
    background:#eee;
}
.frame-panel iframe {
    width:100%;
}
.tour-frame {
    height:300px;
}
.air-frame {
    height:650px;
}
.hotel-frame {
    height:450px;
}

.search-box {
	overflow:auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}
.kokunai-search-frame {
	display:block;
    width:660px;
    height:400px;
	margin:auto;
	border:none;
}
.hotel-frame,
.dp-frame {
    height:570px;
}
#search-tab {
    margin-top:30px;
    border:1px solid #eee;
}
#search-tab > li {
    display: flex;
    display: -ms-flexbox;
    width:25%;
    border-top:1px solid #eee;
    border-bottom:1px solid #eee;
    border-right:1px solid #eee;
    border-left:1px solid #eee;
}
#search-tab > li + li {
    border-left: 1px solid #eee;
}
#search-tab a {
    width: 100%;
    line-height: 1.4;
    color: #000;
    padding: 10px 0 10px 0;
    position: relative;
    text-decoration: none;
    display: flex;
    display: -ms-flexbox;
    align-items: center;
    -ms-flex-align: center;
    justify-content: center;
    -ms-flex-pack: center;
    flex-direction:column;
    -ms-flex-direction:column;
    transition: .3s;
}
#search-tab a.active {
    font-weight:bold;
    background-color: #fa0046;
    color:#fff;
    text-decoration: none;
}
#search-tab p {
    font-size: 14px;
    margin-bottom:0;
}
#search-tab span {
    margin-bottom:5px;
}
#search-tab i {
    font-size:35px;
}
#search-tab i + i {
    margin-left:5px;
}
#search-tab-content {
    background:#eee;
}

#search-tab-content .tab-pane {
    padding:0 25px 25px;
}

@media(max-width:767px) {
	.search-box {
		overflow:scroll;
	}
}
@media(max-width:750px) {
	#search-tab-content .tab-pane {
		padding:0 15px 15px;
	}

	.white-frame-panel {
		padding:15px;
	}
}

/*ryugaku*/

.feature-box {
    display:flex;
    display:-ms-flex;
    margin-top:50px;
    padding:25px;
    background:#eeeeee;
}
.feature-txts {
    padding-right:25px;
    text-align:left;
}
.feature-txts h3 {
    margin-bottom:25px;
    padding-bottom:5px;
    font-size:22px;
    font-weight:bold;
    color:#005cb0;
    border-bottom:3px solid #005cb0;
}
.feature-txts p {
    font-size:16px;
    margin-bottom:0;
}

.feature-txts ul {
    margin-top:25px;
}
.feature-txts li {
    font-weight:bold;
    font-size:16px;
}
.feature-txts li:before {
    color:#7f7f7f;
    content: "\f046";
    font: normal normal normal 14px/1 FontAwesome;
}
.feature-img ,
.feature-logo {
    flex:0 0 auto;
}
.feature-img img {
    width:335px;
    height:auto;
}
.feature-img-sp {
    margin-bottom:20px;
}
.feature-img-sp img {
    width:100%;
    height:auto;
}
.feature-logo img {
    margin-bottom:20px;
    width:300px;
    height:auto;
    max-width:100%;
}
.belt-link {
    display:block;
    margin-top:50px;
    padding:15px;
    font-size:24px;
    color:#fff !important;
    background:#005cb0;
}
.belt-link i {
    margin-right:10px;
}

.feature-top {
    margin-bottom:1rem;
    padding:1rem;
    border-radius:1rem;
    background:#0f76bb;
}
.feature-top > h2 {
    color:#fff;
    font-weight:bold;
    font-size:2rem;
    margin-bottom:1rem;
}
.feature-top > p {
    color:#fff;
    font-size:1.1rem;
    font-weight:bold;
}
.feature-panel {
    background:#fff100;
}
.feature-panel > p {
    padding:1rem;
    color:#000;
    font-weight:bold;
    font-size:1rem;
    text-align:center;
    margin-bottom:0;
}
.feature-panel span {
    color:#0f76bb;
}

.feature-mdl img ,
.feature-img-panel img {
    width:100%;
    height:auto;
}
.feature-btm > a {
    display:block;
    text-align:center;
    margin:1rem;
    font-size:1.2rem;
}

@media(max-width:750px) {
    .feature-box {
        margin-top:15px;
        margin-right:-15px;
        margin-left:-15px;
        padding:15px;
        flex-direction:column;
        -ms-flex-direction:column;
    }
    .feature-txts {
        padding-right:0;
    }
    .feature-logo img {
        margin-top:30px;
        margin-bottom:5px;
        max-width:90%;
    }
    .feature-txts p {
        font-size:14px;
    }
    .feature-logo {
        width:90%;
        margin:auto;
    }
    .belt-link {
        margin-right:-15px;
        margin-left:-15px;
    }
}

/*houjin*/

.corp-box {
    display:flex;
    display:-ms-flex;
    flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    background:#eeeeee;
    padding:5px;
}
.corp-item {
    width:50%;
    padding:2.5px;
}
.corp-inner {
    padding:20px;
    background:#fff;
}
.corp-inner p {
    margin-bottom:0;
    padding-bottom:5px;
    font-size:16px;
    font-weight:bold;
    text-align:left;
    border-bottom:2px solid #ff003f;
}
.corp-inner p:before {
    margin-right:10px;
    content: "\f046";
    color:#7f7f7f;
    font: normal normal normal 22px FontAwesome;
}

.corp-row > div {
    display:flex;
    display:-ms-flexbox;
    width:100%;
}
.corp-panel {
    position:relative;
    width:100%;
}
.corp-panel:before {
    content:'';
    display:block;
    padding-top:120%;
}
.corp-panel-txt {
    position:absolute;
    top:0;
    bottom:0;
    right:0;
    left:0;
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    justify-content:flex-start;
    -ms-flex-pack:start;
    flex-direction:column;
    -ms-flex-direction:column;
    margin-bottom:0;
    background:linear-gradient(rgba(34, 34, 34, 1) 0%, rgba(34, 34, 34, .5) 50%,rgba(34, 34, 34, 0)) !important;
}
.corp-panel-ttl {
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
    justify-content:center;
    -ms-flex-pack:center;
    color:#fff;
    font-size:1.2rem;
    font-weight:bold;
    margin-bottom:0;
    padding:1.8rem 0;
    max-width:80%;
    width:100%;
    border-bottom:2px solid #fa0046;
}
.corp-panel-desc {
    color:#fff;
    font-size:1rem;
    font-weight:bold;
    padding:1rem;
    max-width:100%;
}
.panel-01 {
    background:url(../images/corp01.jpg) no-repeat bottom;
    background-size:cover;
}
.panel-02 {
    background:url(../images/corp02.jpg) no-repeat bottom;
    background-size:cover;

}
.panel-03 {
    background:url(../images/corp03.jpg) no-repeat bottom;
    background-size:cover;

}
.panel-01 > p {
    background:linear-gradient(rgba(255, 145, 23, 1) 0%, rgba(255, 145, 23, 1) 50%,rgba(255, 145, 23, 0));
}
.panel-02 > p {
    background:linear-gradient(rgba(86, 177, 226, 1) 0%, rgba(86, 177, 226, 1) 50%,rgba(86, 177, 226, 0));
}
.panel-03 > p {
    background:linear-gradient(rgba(93, 176, 45, 1) 0%, rgba(93, 176, 45, 1) 50%,rgba(93, 176, 45, 0));
}
.corp-panels-wrap > p {
    text-align:left;
}
.corp-panels-wrap > p span {
    font-size:.9rem;
}
.corp-txts {
    margin-top:4rem;
    text-align:center;
}
.corp-txts > p:first-of-type {
    font-size:1.2rem;
    font-weight:bold;
}
.corp-txts .ttl {
    font-size:1.1rem;
    margin-top:2.5rem;
}
.corp-txts dd {
    font-size:1.1rem;
}
.corp-txts dd span {
    color: #fa0046;
    font-weight: bold;
}

.modal-open {
    height:100% !important;
}
.modal-dialog {
    max-width:800px !important;
}
.modal-body .form-group {
    text-align:left;
    margin-bottom:0;
}
.col-form-label {
    text-align:left;
}
.modal-wrap {
    display:flex;
    display:-ms-flexbox;
}
.modal-wrap > div {
    width:50%;
    flex:0 0 auto;
    -ms-flex:0 0 auto;
}
.modal-wrap .bg-primary {
    background-color: #007bff !important;
}
.modal-inner {
    display:flex;
    display:-ms-flexbox;
    flex-direction:column;
    -ms-flex-direction:column;
    color:#fff;
}
.modal-inner > div {
    width:100%
}
.modal-inner > div:last-of-type {
    margin-top:auto;
}
.modal-inner > div:last-of-type {
    margin-top:auto;
}
.modal-inner > .modal-body {
    display:flex;
    display:-ms-flexbox;
    flex-direction:column;
    -ms-flex-direction:column;
}
.modal-body > .ttl {
    font-size:22px;
    font-weight:bold;
}
.modal-body > .ttl + p {
    font-size:16px;
    margin:20px 0;
}
.member-panel {
    margin-top:auto;
}
.member-panel .btn {
    margin-top:20px;
    background-color: #fa0046;
    font-weight: bold;
    font-size: 18px;
    color: #fff !important;
}
.modal-help {
    padding:15px 15px 15px 15px;
}
.modal-help p {
    font-size:16px;
}
.modal-help p span {
    font-weight:bold;
    font-size:24px;
    color: #fa0046;
}
.modal-help > p:last-of-type {
    margin-bottom:0;
}
.modal-help .ttl {
    font-weight:bold;
    font-size:18px;
}

.newsModal .modal-dialog {
	position:absolute;
	top:10px;
	bottom:10px;
	left:10px;
	right:10px;
	display:flex;
	display:-ms-flexbox;
	margin:auto;
}

.newsModal .modal-body {
	overflow:auto;
}

.newsModal .modal-title {
	font-size:16px;
}

.newsModal .txt {
	font-size:14px;
}

@media(max-width:991px) {
	.modal-help {
		padding:10px 10px 45px 10px;
	}
}

@media(max-width:767px) {
    .modal {
        height:100vh;
        width:100%;
    }
    .modal-dialog ,
    .modal-content {
        width:100%;
        display:flex;
        display:-ms-flexbox;
    }
    .modal-dialog {
        align-items:center;
        -ms-flex-align:center;
        justify-content:center;
        -ms-flex-pack:center;
        height:100vh;
        margin:0;
    }
    .modal-content {
        width:calc(100% - 10px);
        height:calc(100% - 10px);
    }

    .modal-content {
        flex-direction:column;
        -ms-flex-direction:column;
		padding-bottom:40px;
    }
    .modal-header {
        width:100%;
    }
    .modal-content .frame-area {
        display:flex;
        -ms-display:-ms-flexbox;
        flex: 1 1 auto;
        -ms-flex: 1 1 auto;
        width:100%;
    }
    .modal-content #modal-frame {
        height:auto;
        flex:1 1 auto;
    }

	.newsModal .modal-dialog {
		width:auto !important;
		height:auto !important;
	}

}

/*staff*/

.staff-visual .item img {
    display:inline-block;
    max-width:280px;
    width:100%;
}
.staff-visual .txt {
    font-size:2rem;
}

@media(max-width:750px) {
    .corp-item {
        width:100%;
    }
}

/*OB*/

.ob-point-wrap {
    margin-top:40px;
    padding:20px;
    border: 2px solid #e6e6e6;
    text-align:center;
}
.ob-point-wrap .ttl {
    font-weight:bold;
    font-size:25px;
    border-bottom:2px solid #fa0046;;
    margin:15px 0 30px;
    padding-bottom:15px;
}
.ob-point-panel + .ob-point-panel {
    margin-top:70px;
}
.ob-point-panel p {
    font-size:16px;
}
.ob-pamphlet-wrap > .sect-ttl {
    padding-top:15px;
}
.ob-pamphlet-wrap > p {
    margin-top:30px;
    margin-bottom:30px;
    font-size:18px;
    font-weight:bold;
}
.ob-pamphlet-panel {
    padding:15px;
    background:#f1f1f1;
    text-align:left;
}
.ob-pamphlet-panel h3 {
    text-align:center;
}
.ob-pamphlet-panel h3 + p {
    text-align:center;
}
.ob-pamphlet-qa-box p {
    font-size:18px;
    margin-bottom:0;
}
.ob-pamphlet-qa-box .question {
    margin-bottom:30px;
}
.ob-pamphlet-qa-box p span {
    margin-right:15px;
    font-weight:bold;
    font-size:28px;
    color:#005cb0;
}
.ob-tel-txt {
    margin-top:80px;
}
.ob-tel-txt p {
    background:#005cb0;
    font-size:28px;
    padding:10px;
    margin-bottom:0;
    color:#fff;
}
.ob-tel-txt p i {
    margin-right:10px;
    font-size:28px;
}

.timeline-wrap {
	position: relative;
	margin: auto;
	padding-bottom: 2em;
    text-align:left;
}
.timeline-wrap:before {
	position: absolute;
	top: 0px;
	left: 45px;
	width: 3px;
	height: 100%;
	content: '';
	background: #e91e63;
}
.timeline-wrap .timeline-item {
	margin: 0px 0px 50px 80px;
}
.timeline-wrap > .timeline-item:last-of-type {
    margin-bottom:0;
}
.timeline-wrap .timeline-item .time-date {
    display:flex;
    display:-ms-flexbox;
    align-items:center;
    -ms-flex-align:center;
}
.timeline-wrap .timeline-item .time-date .time {
	font-size: 5em;
	font-weight: bold;
	position: relative;
	margin: 0 20px 0 0;
	letter-spacing: 3px;
	color: rgba(233,30,99,0.1);
}
.timeline-wrap .timeline-item .time-date .time:before {
	position: absolute;
	top: 50%;
	left: -39px;
	width: 10px;
	height: 10px;
	content: '';
	border: 3px solid #e91e63;
    border-radius:50%;
	background: #fff;
}
.timeline-wrap .timeline-item .time-date .flag {
	font-size: 24px;
	font-weight: bold;
	margin: 0;
	color: #fa0046;
}
.timeline-wrap .timeline-item .desc {
	font-size: 16px;
	line-height: 20px;
	margin-top: 10px;
}
.timeline-wrap .timeline-item .desc p {
	font-size: 16px;
    font-weight:bold;
}

@media only screen and (max-width: 767px) {
    .timeline-wrap:before {
        left: 15px;
    }
    .timeline-wrap .timeline-item .time-date {
        display:block;
    }
    .timeline-wrap .timeline-item .time-date .time:before {
        left: -29px;
    }
    .timeline-wrap .timeline-item {
        margin: 0px 0px 0px 40px;
    }
    .timeline-wrap .timeline-item .desc {
        padding-left: 0px;
        border-left: none;
    }
}

.qa-wrap {
    text-align:left;
}
.qa-panel .ttl {
    font-size:20px;
    margin-bottom:15px;
}
.qa-panel + .qa-panel {
    margin-top:40px;
}
.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 0 1em 0;
	color: #1b2538;
}
.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}
.cp_qa .cp_actab label {
	font-weight: bold;
    font-size:16px;
	line-height: 1.6em;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1em 2.5em 1em 2.5em;
	cursor: pointer;
	text-indent: 1em;
	border-radius: 0.5em 0.5em 0 0;
	background: rgba(27,37,56,0.1);
	color: #005cb0;
	cursor:default;
}
.cp_qa .cp_actab label::before {
	font-size: 1.5em;
	margin-left: -2em;
	padding-right: 0.5em;
	content: 'Q';
}
.cp_qa .cp_actab label:hover {
	transition: all 0.3s;
	color: #005cb0;
}
.cp_qa .cp_actab label::after {
	font-size: 1.7em;
	font-weight: bold;
	line-height: 2em;
	position: absolute;
	top: 0;
	right: 0;
	content: '\2b';
	display: inline-block;
	width: 2em;
	height: 2em;
	-webkit-transition: transform 0.4s;
	        transition: transform 0.4s;
	display:none;
}
.cp_qa .cp_actab .cp_actab-content {
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0 0 0 2.5em;
	-webkit-transition: max-height 0.2s;
	        transition: max-height 0.2s;
	border-radius: 0 0 0.5em 0.5em;
    border:0px solid;
	-webkit-transition: transform 0.4s;
	        transition: transform 0.4s;
	max-height: 40em;
	border: 10px solid rgba(27,37,56,0.1);
}
.cp_qa .cp_actab .cp_actab-content::before {
	font-size: 1.5em;
	position: absolute;
	margin: 0.4em 0 0 -1em;
	padding: 0;
	content: 'A';
	color: #005cb0;
}
.cp_qa .cp_actab .cp_actab-content p {
	margin: 1em 1em 1em 0;
    font-size:15px;
}
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 40em;
	border: 10px solid rgba(27,37,56,0.1);
}
.cp_qa .cp_actab input:checked ~ label {
	color: #005cb0;
	border-radius: 0.5em 0.5em 0 0;
}
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

/*ryokin*/

#license, #provision {
    text-align: left;
    font-size: 1rem;
}
    #license h2,
    #provision h2 {
        margin: 40px 0 10px 0;
        padding: 2px 0 2px 8px;
        border-left: 5px solid #ff0000;
        border-bottom: 1px solid #ccc;
        font-size: 1.2rem;
    }

    #license table {
        width: 100%;
        margin: 0 auto 20px auto;
        border: solid 1px #ccc;
        border-collapse: collapse;
    }

    #license th {
        padding: 5px;
        border: solid 1px #ccc;
        text-align: left;
        font-size: 1rem;
    }

    #license td {
        padding: 5px;
        border: solid 1px #ccc;
        font-size: 1rem;
    }

    #license ul {
        margin: 0 auto 20px auto;
    }

    #license a {
        font-size: 1rem;
    }

    #license > p {
        font-size: 1rem;
    }

/*Input*/

.search-panel .input-group-addon {
    width: 100%;
    color: #fff;
    background: none;
    border: none;
    text-align: left;
}

    .search-panel .input-group-addon:hover {
        color: #fff;
    }

    .search-panel .input-group-addon span {
        width: 100% !important;
        font-size: 1rem;
    }

.search-panel .form-control {
    height: 45px;
    border-radius: 5px !important;
    padding: 11.5px 12px;
    position: relative;
    text-align: left;
}

    .search-panel .form-control:after {
        content: '\f078';
        font-family: FontAwesome;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.7rem;
    }

    .search-panel .form-control:after {
        color: #fa0064;
    }

.search-box > img {
    max-width: 100%;
}

.search-panel .btn,
.search-panel .btn span {
    color: #fff;
}

.search-panel .btn-success {
    position: relative;
    border: none;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.search-panel .btn-success {
    background: #fa0064;
}
    .search-panel .btn-success:after {
        content: '\f002';
        font-family: FontAwesome;
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.5rem;
        color: #fff;
    }
.search-panel .btn-xs {
    font-size: .775rem;
    padding: .2rem .4rem;
}

.search-panel .btn_blue {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff;
}

.search-panel .btn-primary {
    margin-top: 15px;
}

.search-panel .btn-default {
    background: #362e2b;
    color: #fff;
    border: none;
}

.search-panel .btn-info {
    background: #0169ca;
    border: none;
}

.search-panel .btn-warning {
    color: #000;
}

.search-panel .btn-plus,
.search-panel .btn-minus {
    position: relative;
    text-align: left;
    border: none;
}
    .search-panel .btn-plus:after {
        content: '\f055';
        font-family: FontAwesome;
        position: absolute;
        right: 5px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1rem;
        color: #fff;
    }

    .search-panel .btn-minus:after {
        content: '\f056';
        font-family: FontAwesome;
        position: absolute;
        right: 5px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1rem;
        color: #fff;
    }

.search-panel .btn-success:active {
    background: #e40056 !important;
}

.search-panel .btn-primary:active {
}

.search-panel .btn-warning:active {
    color: #000;
}

.search-panel .btn-info:active {
    background: #0169ca !important;
}

#TourClear {
    max-width: 100%;
    width: 100%;
    flex: 1 0 auto;
}
.search-panel *[id*="pADT_NUM"],
.search-panel *[id*="pCHD_NUM"] {
    padding-right: 15px;
    width: 100%;
}

.pd5 {
    padding: 0 !important;
}

#collapseTour > .row > div,
#collapseTour > .row div[class*="disp-"] > div {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}

#AddaddDestination {
    margin-top: 15px;
}
    #AddaddDestination > div[class*="col-"],
    .AirSearch_AREA_Panel,
    .AirSearch_AIRPORT_Panel,
    div[class*="AirSearch_destination"] > div[class*="col-"] {
        width: 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

#collapseDetail > .row,
#collapseDp > .row {
    margin-right: -5px;
    margin-left: -5px;
}

    #collapseDetail > .row > div,
    #collapseDp > .row > div {
        padding-right: 5px;
        padding-left: 5px;
    }

#collapseDetail .form-control:after,
#collapseDp .form-control:after {
    display: none;
}

#AirSearch_SearchFormContent > div:nth-of-type(5) > div {
    width: 100%;
    max-width: 100%;
    flex: 1 1 auto;
}

#RTPanel > div > .row,
#OWPanel > .row,
#CTPanel > .row > .col-md-12 > .row,
#DynamicSearch_SearchFormContent > .row {
    margin-right: -5px;
    margin-left: -5px;
}

    #RTPanel > div > .row > div,
    #OWPanel > .row > div,
    #CTPanel > .row > .col-md-12 > .row > div,
    #DynamicSearch_SearchFormContent > .row > div {
        padding: 5px;
    }

.bdt-white {
    text-align: right;
}

    .bdt-white .btn-primary {
        display: inline-block !important;
        width: auto !important;
        font-size: .775rem !important;
        padding: .2rem .4rem !important;
    }

#TourSearch_TOUR_THEME_PANEL {
    display: none !important;
}

@media(max-width:575px) {
    .search-panel *[id*="pADT_NUM"] {
        padding-right: 5px !important;
    }

    .search-panel *[id*="pCHD_NUM"] {
        padding-left: 5px !important;
    }

    .search-panel *[id*="pADT_NUM"],
    .search-panel *[id*="pCHD_NUM"] {
        width: 50%;
    }

        .search-panel *[id*="pADT_NUM"] br,
        .search-panel *[id*="pCHD_NUM"] br {
            display: none;
        }
}

/* mediaqueries */

@media(max-width:991px) {
    .main-visual > .container > div {
        width: 100%;
    }

    .main-visual .txt {
        padding-bottom: 15px;
    }

    .main-visual .search-panel {
        order: 1;
        padding-bottom: 70px;
    }

    .contact-in {
        flex-direction: column;
        -ms-flex-direction: column;
        padding: 15px;
    }

    .contact-left {
        width: 100%;
        margin-bottom: 15px;
        margin-right: 0;
        padding-bottom: 15px;
        padding-right: 0;
        border-right: 0;
        border-bottom: 1px solid #eee;
    }

        .contact-left br {
            display: none;
        }

        .contact-left > p {
            font-weight: bold;
        }

    .contact-right {
        padding: 15px;
        width: 100%;
    }

    .contact-txt {
        margin-left: 40px;
    }
}

@media(max-width:850px) {
    .contact-in {
        padding: 0;
    }

    .contact-left {
        flex-direction: column;
        -ms-flex-direction: column;
    }

    .contact-right > p {
        align-self: center;
        -ms-flex-item-align: center;
    }

    .contact-right {
        flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-direction: column;
        -ms-flex-direction: column;
    }

        .contact-right .contact-btn {
            margin-right: auto;
        }

    .contact-time {
        text-align: center;
        padding-top: 15px;
    }

    .contact-txt {
        margin-top: 15px;
        margin-bottom: 15px;
        margin-left: 0;
    }
}

@media(max-width:750px) {
    .main-visual > .container {
        align-items: center;
        -ms-flex-align: center;
        flex-direction: column;
        -ms-flex-direction: column;
        padding-top: 0;
    }

    .page-visual .txt {
        display: block;
        text-align: center;
    }

    .page-visual .item {
        padding: 15px;
    }

    .contact-logos > p {
        font-size: 1.25rem;
    }

    .contact-pane:before {
        display: none;
    }

    .contact-right {
        flex-direction: column;
        -ms-flex-direction: column;
    }

    .contact-left {
        padding-bottom: 0;
        position: relative;
    }

        .contact-left:before {
            position: absolute;
            content: '';
            top: 0;
            bottom: 0;
            left: 0;
            display: block;
            width: 30%;
            margin-right: -20px;
            background: url(../images/contact_bg.png) center no-repeat;
            background-size: cover;
        }

    .contact-time {
        flex-direction: column;
        -ms-flex-direction: column;
        padding-bottom: 15px;
        position: relative;
        z-index: 1;
    }

    .contact-txt {
        margin-left: 0;
    }

        .contact-txt p {
            font-size: 1.4rem;
        }

    .footer-wrap {
        border-top: none;
    }

    .btm-nav-wrap {
        border-bottom: none !important;
    }

    .info-line {
        flex-wrap: wrap;
        -ms-flex-wrap: wrap;
    }

        .info-line .txt {
            margin-top: 8px;
        }

    .modal-wrap {
        display: block;
    }

        .modal-wrap > div {
            width: 100%;
        }

    #search-tab > li {
        width: 50%;
    }

    /**.sp-table-scroll {
        overflow: auto;
        width: 100%;
    }

    #license .sp-table-scroll > table {
        width: 800px;
    }**/

     .sp-table-scroll  td ,
     .sp-table-scroll  th {
		 font-size:.7rem !important;
		 padding:2px;
    }
}

@media(max-width:575px) {
    .main-panel-card .img {
        display: -ms-flexbox;
        display: flex;
        align-items: center;
        -ms-flex-align: center;
        justify-content: center;
        -ms-flex-pack: center;
        max-width: 150px;
        padding: 30px;
    }

    #search-tab span {
        margin-bottom: none;
    }

    #search-tab p {
        display: none;
    }
}
