@charset "utf-8";
@media screen and (min-width: 1201px) { html{font-size:17px; } }@media screen and (max-width: 1200px) { html{font-size:16px; } }@media screen and (max-width: 1024px) { html{font-size:15px; } }@media screen and (max-width: 768px) {  html{font-size:14px; } }@media screen and (max-width: 480px) {  html{font-size:13px; } }a,a:visited,a:active { color:rgba(66,66,66,1.00)}a:hover { color:rgba(2,25,66,1.00)}
/* css setting */
/*デフォルト*/

a   {
text-decoration:none;
}

.hover_opacity:hover{
opacity: 0.85;
transition:0.6s;
}

.letter-spacing{
letter-spacing: 0.3rem;
}

.opacity {
opacity: 0.9;
}


/*　==============================　TOP　==============================　*/
.message_bg{
background-size:70%!important;
background-position-y:top;
background-position-x:right;
height:auto;
}
.message_box{
padding:2rem;
margin:0 2rem;
}
@media screen and (max-width: 480px){
.message_bg{
background-image:none!important;
}
.message_box{
box-shadow:none!important;
padding:0;
}
}
@media screen and (max-width: 480px){
.profile_bg{
background-image:none!important;
}
}

.cp_left {
padding: 1rem 0;
vertical-align: top;
width: 25%;
font-weight: bold;
text-align: justify;
color:#021942;
}
.cp_right {
font-size: 0.9rem;
text-align: justify;
padding: 1rem  0 1rem 1rem;
vertical-align: top;
width: 90%;
display:flex;
}
.cp_right{
display:flex;
}

.cp_right .flex_ct .fa{
margin-right:0.5rem;
}
.cp_line {
border-top:1px solid #F5F5F5;
}

.number_text p{
line-height:1;
}



.service_bottom_bg {
padding:50vh 0 0;
}

@media screen and (max-width: 1024px){
.service_bottom_bg {
padding: 65vh 0 0;
}
}

@media screen and (max-width: 768px){
.service_bottom_bg {
padding: 35vh 0 0;
background-attachment:scroll!important;
}
}

@media screen and (max-width: 498px){
.service_bottom_bg {
padding: 55vh 0 0;
background-position: 48% 40%!important;
background-size: 275%!important;
}
}



.header_logo{
padding:1rem 2rem;
}
.mv_catch-copy{
padding:10vh 18% 25vh;
}


@media screen and (max-width: 820px) {
.mv_catch-copy{
padding:5vh 2rem 30vh;
}
}
@media screen and (max-width: 480px) {
.mv_catch-copy{
padding:5vh 0rem 30vh 2rem;
width:50%;
}
}
.header_sns_icon img{
max-width:50px!important;
height:auto;
}
.header_sns_icon li{
margin-top:1rem;
margin-right:1rem;
}
.header_sns_icon li:last-child{
margin-right:2rem;
}
.header_sns_icon .wrapper{
width:auto!important;
}
.header_sns_icon img:hover{
opacity: 0.85;
transition:0.6s;
}


@media screen and (max-width: 600px) {
.header_sns_icon li:last-child{
margin-right:0rem;
}
}


.official_sns_btn .sns_btn:not(:last-child){
margin-bottom:2rem;
}

.official_sns_btn .sns_btn{
border:1px solid #021942;
font-weight:bold;
display:flex;
text-align:center;
align-items: center;
justify-content:center;
vertical-align: middle;
background-color:#fff;
}
.official_sns_btn .sns_btn:hover{
border:1px solid #7A8084;
}
.official_sns_btn a{
width:100%;
padding:1rem 2rem;

}
.official_sns_btn .sns_btn  img{
margin-top:2.5px;
}
.official_sns_btn .sns_btn:hover   img{
opacity: 0.85;
transition:0.6s;
}



@media screen and (max-width: 480px) {
#header-2-1{
background-color:#fff;
}
.header_logo{
width:60%;

}
}
@media screen and (max-width: 480px) {
.header_sp .official_sns_btn .sns_btn:not(:last-child){
margin-bottom:0rem;
}
.header_sp .official_sns_btn{
border:none;
display:flex;
vertical-align: top;

}
.header_sp .official_sns_btn a{
width:100%;

padding:0.5rem 2rem;
background-color:#F5F5F5;
}
.header_sp .official_sns_btn .sns_btn{
width:50%;
}
}
/*　フッターナビ　*/


.footer_sns_icon img{
max-width:50px!important;
height:auto;
}
.footer_sns_icon li:not(:last-child){
margin-right:1rem;
}
.footer_sns_icon .wrapper{
width:auto!important;
}
.footer_sns_icon img:hover{
opacity: 0.85;
transition:0.6s;
}
.footer_link a{
color:#fff!important;
}
.footer_link a:hover{
opacity: 0.5;
transition:0.3s;
}
@media screen and (max-width: 480px) {
.footer_logo{
max-width:250px;
}
.footer_sns_icon img{
max-width:35px!important;
height:auto;
}
}
.sitemap-table{
width:100%;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: left;
flex-direction: row;
}
.sitemap-table li:not(:last-child){
margin-right:5rem;
}

.sitemap-table-eiji{
font-size:0.8rem;
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}
@media screen and (max-width: 480px) {
.sitemap-table{
font-size:125%!important;
line-height:2.5rem!important;
flex-direction: column;
width: calc(100% - 2rem);
padding: 0rem 0rem 0rem 2rem;
}
.sitemap-table li:nth-child(1){width: 100%;}
.sitemap-table li:nth-child(2){width: calc(100% - 1rem); padding:0.5rem 0rem 0.5rem 1rem; }
.sitemap-table li:nth-child(3){width: 100%;}
.sitemap-table li a{
flex-flow: row;
display: inline-flex;
}
.sitemap-table-eiji{width:60px;}
.sitemap-table .br-sp{
line-height: unset;
}
.sitemap-table li p{
margin-bottom: 0rem;
padding: 0.35rem 0rem 0.35rem 1rem;
}
.sitemap-table li p:nth-child(odd){
background-color: #003478;
}
}

@media screen and (max-width: 1220px) {
.footer_ct_sp{
padding:0 2rem;
}


.sitemap-table-eiji{width:60px;}
}
.sitemap-table a, .sitemap-table a:visited, .sitemap-table a:active ,
.f-link a , .f-link a:visited, .f-link a:active  {
color: #ffffff;
}
.sitemap-table a:hover ,.f-link a:hover{
opacity: 0.5;
transition:0.3s;
}
}
/*　==============================　共通　==============================　*/
.title_center, .title_left{
line-height:1.2!important;
}
.title_left {
display: flex;
align-items: center;
max-width: 100%;
margin: 0 auto;
position: relative;
}
.title_left::after {
content: "";
flex: 1;
height: 2px;
background-color: #D1D1D1;
margin-left: 10px;
margin-top:5px;
}
.title_center .main_title, .title_left .main_title{
color:#021942;
font-size:2.5rem;
}
.title_center .sub_title{
color:#7A8084;
font-size:1.2rem;
}
.title_left .sub_title{
color:#D1D1D1;
font-size:1.2rem;
margin-left:0.5rem;
}

.title_left_white {
display: flex;
align-items: center;
max-width: 100%;
margin: 0 auto;
position: relative;
}
.title_left_white::after {
content: "";
flex: 1;
height: 2px;
background-color: #ffffff;
margin-left: 10px;
margin-top:5px;
}
.title_left_white .main_title{
color:#ffffff;
font-size:2.5rem;
}
.title_left_white .sub_title{
color:#ffffff;
font-size:1.2rem;
margin-left:0.5rem;
}



/*　==============================　ページタイトル共通設定　==============================　*/

.page-ttl-ja{
padding: 3rem 2rem 0rem 2rem;
}
.page-ttl-ja_news{
padding: 3rem 2rem 0rem 2rem;
}
.page-ttl-en{
padding: 0rem 2rem 20rem 2rem;
}
.page-ttl-en_news{
padding: 0rem 2rem 5rem 2rem;
}
@media screen and (max-width: 768px) {
.page-ttl-ja{
padding: 5rem 2rem 0rem 2rem;
}
.page-ttl-ja_news{
padding: 5rem 2rem 0rem 2rem;
}
.page-ttl-en{
padding: 0rem 2rem 24rem 2rem;}
.page-ttl-en_news{
padding: 0rem 2rem 5rem 2rem;;
}
}


@media screen and (max-width: 498px) {
.page-ttl-ja{padding: 5rem 2rem 0rem 2rem;text-shadow:1px 1px 3px rgba(0, 0, 0, 0.4);}
.page-ttl-ja_news{padding: 4rem 2rem 0rem 2rem;}
.page-ttl-en{padding: 0rem 2rem 12rem 2rem;text-shadow:1px 1px 3px rgba(0, 0, 0, 0.4);}
.page-ttl-en_news{padding: 0rem 2rem 3rem 2rem;}
}

/*　==============================　お問い合わせページ　==============================　*/
.formBlockSurveyTable dl dt {
color: #999;
text-align: left;
width: 100%;
margin-right: 0%!important;
font-weight: bold;
font-size: 1rem;
margin-top: 1rem;
padding: 2px 0 0.5% 0;
}
.formBlockSurveyTable dl dd {
width: 100%;
}
.formBlockSurveyTable dl {
padding: 0.5% 0;
}
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
width: 96%;
resize: none;
border-radius: 0;
padding: 1.5%;
border: 1px solid #c8d2dc;
}
.formBlockSubmitButton {
width:240px!important;
text-align:center!important;
background-color: #999!important;
color:#fff;
border:1px solid #fff;
}
@media screen and (max-width: 480px) {
.formBlockSubmitButton {
width:100%!important;
}
.miniSurveyView input[type="text"],
.miniSurveyView input[name^="Question"],
.miniSurveyView textarea[name^="Question"] {
font-size: 16px !important;
}
}
.formBlockSubmitButton:hover {
transition:0.6s;
background-color: #fff!important;
border:1px solid #999;
color:#999;
}
.on-pointer input {
cursor: pointer;
}
@media screen and (max-width: 498px) {
.formBlockSurveyTable dl dd input,
.formBlockSurveyTable dl dd textarea {
width: 100%;
}
}

/*　==============================　文字に関する設定　==============================　*/
.bold {
font-weight: bold;
}
.italic {
font-style: italic;
}
.eiji {
font-family: "Lato", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", sans-serif;
}

.space-1{
letter-spacing: 0.1rem;
}
.space-2{
letter-spacing: 0.2rem;
}
.space-3{
letter-spacing: 0.3rem;
}
.space-4{
letter-spacing: 0.4rem;
}
.br-sp{
display:none;
}
.br-sp-r{
display:inline;
}
@media screen and (max-width: 900px) { 
}
@media screen and (max-width: 480px) { 
.tx-center{
text-align: center!important;
}
.tx-left{
text-align: left!important;
}
.tx-right{
text-align: right!important;
}
.br-sp{
display:block;
line-height:0rem;
}
.br-sp-r{
display:none;
}
}

a   {
text-decoration:none;
}

/*　ページトップボタン　*/
.pagetop_btm{
position: fixed;
z-index: 20;
bottom: 0;
right: 0;
}
.pagetop_btm .fs_btn{
line-height: 1.6;
}



/*　==============================　デフォルト　==============================　*/
.ccm-edit-mode, .ccm-scrapbook-list-item-detail div{margin-top:0rem!important;}
.ccm-edit-mode .ccm-area-styles{margin-top:0rem!important;}

.body-pt101 .tk_flex{
border-bottom:1px solid #fff!important;
}
/*　--------------------　ページリストタグ　--------------------　*/
#pagination .currentPage strong{
background-color:#7A8084!imoprtant;
border:1px solid #7A8084!important;
}
#pagination .numbers a{
border:1px solid #021942!important;
background-color:#021942!important;
color:#fff!important;
}
#pagination .numbers a:hover{
border:1px solid #021942!important;
background-color:#ffffff!important;
color:#021942!important;
}
.tk_tags_newsTags{
background-color: #021942;
color: #ffffff;
}
.tk_flex{
border-bottom:1px solid #F5F5F5;
}
/*　--------------------　ページャー　--------------------　*/
div .ccm-pagination{
margin-top: 1rem;
}
div.ccm-pagination span.ccm-page-left, div.ccm-pagination span.ccm-page-right{
top: 0.5rem!important;
}
#pagination .currentPage  strong{
background-color: #000000!important;
color: #ffffff!important;
}
#pagination .numbers {
margin-right: 0.6rem;
}
#pagination .numbers a, #pagination .numbers strong{
font-family: 'Roboto', 游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,sans-serif;
background-color: #666666;
padding: 0.5rem 1rem;
display: inline-block;
}



h1 , h2 , h3 {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px;
    margin-top: 0px;
}

.white_rgba {
background-color: rgba(255,255,255,0.7);
}

.letter-spacing{
letter-spacing: 0.3rem;
}

/*　--------------------　ページリストタグ　--------------------　*/
.tk_tags_Tags{
background-color: #005292;
color: #ffffff;
}

/*　--------------------　その他　--------------------　*/

.hover-opacity:hover{
opacity: 0.8;
transition:0.6s;
}
.hover-opacity-img:hover {
opacity:0.7;
transition:0.6s;
}

.br-sp-adress{display:none;}
@media screen and (max-width: 768px) {
    .br-sp-adress{display:block; line-height:0rem;}
}

.hover-opacity-svg img{
opacity:1;
transition:0.6s;
}
.hover-opacity-svg img:hover
{opacity:0.7;
transition:0.6s;
}

.cuosor {
pointer-events: none ;
cursor: default ;
}

/*　box-shadow　*/
.boxshadow_20 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.20);}
.boxshadow_50 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.5);}
.boxshadow_90 {box-shadow: 4px 4px 6px 0 rgba(0,0,0,.9);}

/*　———　スマホ時改行なし　———　*/
@media screen and (max-width: 480px){
.sp-br-none br {display:none;}
}


/* === フォーム部分追加(20/07/15) === */
@media screen and (max-width: 480px) {
.miniSurveyView input[type="text"],
.miniSurveyView input[name^="Question"],
.miniSurveyView textarea[name^="Question"] {
font-size: 16px !important;
transform: scale(0.9) !important;
}
}





