/*!
 * ICR website Template ver1.0.0
 * Copyright 2016- Made by BowWorks
 */

/*スタイルの初期化
-----------------------------------------------------------------------------------------------------------------*/
form {-webkit-appearance: none;-moz-appearance: none;appearance: none;}

body {font-family: -apple-system, 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'メイリオ', meiryo, sans-serif;font-size:14px;letter-spacing: 0;line-height: 1.0em;webkit-tap-highlight-color: #222222;}
section.toppage__shortcut{height:100%;width:100%;table-layout: fixed;display:table;}
section.toppage__shortcut article{height:100%;display:table-cell;float: none;}
.bg__primary {background-color: #1e50a2;}
.bg__dark {background-color: #222222;color: white;}
.text__primary {color: #f05f40;}

/*上下マージン関係
-----------------------------------------------------------------------------------------------------------------*/
.mt10{margin-top:10px;}.mt20{margin-top:20px;}.mt30{margin-top:30px;}.mt40{margin-top:40px;}.mt50{margin-top:50px;}.mt75{margin-top:75px;}.mt100{margin-top:100px;}
.mb10{margin-bottom:10px;}.mb20{margin-bottom:20px;}.mb30{margin-bottom:30px;}.mb40{margin-bottom:40px;}.mb50{margin-bottom:50px;}.mb75{margin-bottom:75px;}.mb100{margin-bottom:100px;}
.mt-10{margin-top:-10px;}.mt-20{margin-top:-20px;}.mt-30{margin-top:-30px;}.mt-40{margin-top:-40px;}.mt-50{margin-top:-50px;}.mt-75{margin-top:-75px;}.mt-100{margin-top:-100px;}
.mb-10{margin-bottom:-10px;}.mb-20{margin-bottom:-20px;}.mb-30{margin-bottom:-30px;}.mb-40{margin-bottom:-40px;}.mb-50{margin-bottom:-50px;}.mb-75{margin-bottom:-75px;}.mb-100{margin-bottom:-100px;}

/* 左右パディング関係 */
.lp{padding-left:30px;padding-right:0;}
.rp{padding-right:30px;padding-left:0;}

section.toppage__shortcut,section.toppage__shortcut article{border-radius: 10px}

/*グローバルナビゲーション
-----------------------------------------------------------------------------------------------------------------*/
.navbar-brand .img{float:left;display:block;}
.navbar-brand .header__title{float:right;display:block;}
.navbar-brand img{float:left;margin-top:-25px;padding-right:10px;}
.navbar-default {font-family: -apple-system, 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'メイリオ', meiryo, sans-serif;-webkit-transition: all 0.35s;-moz-transition: all 0.35s;transition: all 0.35s;}
.navbar-default .navbar-header .navbar-brand {color: #f05f40;font-family: -apple-system, 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'メイリオ', meiryo, sans-serif;font-weight: 500;text-transform: uppercase;}
.navbar-default .navbar-header .navbar-brand:hover,
.navbar-default .navbar-header .navbar-brand:focus {color: #eb3812;}
.navbar-default .nav > li > a,
.navbar-default .nav > li > a:focus {text-transform: uppercase;font-weight: 100;font-size: 14px;color: #222222;}
.navbar-default .nav > li > a:hover,
.navbar-default .nav > li > a:focus:hover {color: #f05f40;}
.navbar-default .nav > li.active > a,
.navbar-default .nav > li.active > a:focus {color: #f05f40 !important;background-color: transparent;}
.navbar-default .nav > li.active > a:hover,
.navbar-default .nav > li.active > a:focus:hover {background-color: transparent;}

li.translate__link a{padding:10px;border:3px solid #fff;border-radius: 3px;margin:0 2px;display:block;font-weight:normal;}
li #translate-this:hover,li.translate__link:hover{opacity: 0.5;}
li #translate-this a,a#english_link{line-height: 1.3em;padding:10px!important;margin-top:5px;}


/*見出し
-----------------------------------------------------------------------------------------------------------------*/
h1,h2,h3,h4,h5,h6 {font-family: -apple-system, 'Helvetica Neue', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'メイリオ', meiryo, sans-serif}


/*カルーセル
-----------------------------------------------------------------------------------------------------------------*/
.arousel-inner{padding:0;margin:0;}
.carousel-caption {background:rgba(64,64,64,0.3);padding:1.5em;margin-bottom:7%;border-radius: 1em;}
.carousel-caption h2.carouselHeader,.carousel-caption h2.carouselHeader-eng{font-size:30px!important;text-shadow: -2px 2px 0 rgba(128,128,128,1);}
.carousel-caption hr{border-color:#fff;}
.carousel-caption p{}
header {position: relative;width: 100%;width: 100%;}
header .header-content .header-content-inner h1 {font-weight: 700;text-transform: uppercase;margin-top: 0;margin-bottom: 0;}
header .header-content .header-content-inner hr {margin: 30px auto;}
header .header-content .header-content-inner p {font-weight: 300;color: rgba(255, 255, 255, 0.7);font-size: 16px;margin-bottom: 50px;}

/*検索フォーム
-----------------------------------------------------------------------------------------------------------------*/
#custom-search-input {margin:0;padding: 0;}
#custom-search-input form .search-query {padding-right: 10px;padding-right: 11px \9;padding-left: 10px;padding-left: 11px \9;font-size: 1.5em;height:2.5em;
        /* IE7-8 doesn't have border-radius, so don't indent the padding */
        margin-bottom: 0;-webkit-border-radius: 3px;-moz-border-radius: 3px;border-radius: 3px;border-color:#666;}
#custom-search-input form button {border: 0;background: none;
        /** belows styles are working good */
        padding: 2px 5px;margin-top: 2px;position: relative;left: -28px;
        /* IE7-8 doesn't have border-radius, so don't indent the padding */
        margin-bottom: 0;-webkit-border-radius: 3px;-moz-border-radius: 3px;border-radius: 3px;color:#666;}
form .search-query:focus + button {z-index: 3;}


hr {border-color: #1e50a2;border-width: 1px;max-width: 320px;border-bottom:1px solid #1e50a2;height:0.1em;}
hr.light {border-color: white;}


a {-webkit-transition: all 0.35s;-moz-transition: all 0.35s;transition: all 0.35s;color: #f05f40;}
a:hover,a:focus {color: #eb3812;}

span.toppage__bannertext{margin-top: 10px;padding:0;display: block;color:#666;}


.topheader {overflow: hidden;text-align: center;font-size:1.5em;line-height:1.8em;}
.topheader span {position: relative;display: inline-block;margin: 0 2.5em;padding: 0 1em;text-align: left;}
.topheader span::before,
.topheader span::after {position: absolute;top: 50%;content: '';width: 400%;height: 1px;background-color: #aaa;}
.topheader span::before {right: 100%;}
.topheader span::after {left: 100%;}

.blackbar span::before,.blackbar span::after {background-color: #333;}

section.toppage__shortcut{padding-top:15px;padding-bottom:15px;}

h4.shortcut_header{text-align:left;padding-bottom:0.3em;border-bottom: 1px dashed #999;font-size:1.2em;line-height:2.0em;color:#111;}

p {font-size: 16px;line-height: 1.5;margin-bottom: 20px;}
.text-faded {color: rgba(255, 255, 255, 0.7);}
.no-padding {padding: 0;}


/*コンテンツ内
-----------------------------------------------------------------------------------------------------------------*/
article .service-box ul {text-align: left;list-style: none;margin-bottom:1.5em;font-size:0.93em;}
article .service-box li {margin-bottom: 0.7em;margin-left:-1.5em;}
article .service-box li a {padding-left: 0.3em;border-left:5px solid #1e50a2;display:block;width:100%;color:#1e50a2;padding:0.5em 0 0.5em 0.3em;}
article .service-box li:hover {background: #1e50a2;color: #fff;}
article .service-box li a:hover {color: #fff;}
article .service-box ul li ul {border-left:0;margin-left:-2.0em;}
article .service-box h4{border-bottom:1px dotted #666;line-height:1.5em;width:95%;font-size:1.2em;margin-top:0.7em;}

.section-heading {margin-top: 0;}
article p.text-mute {margin:1.0em auto 0;padding:0 0.5em;display:block;line-height:1.9em;}

.intro-section {height: 100%;padding-top: 150px;text-align: center;background: #fff}
.about-section {height: 100%;padding-top: 150px;text-align: center;background: #eee;}
.services-section {height: 100%;padding-top: 150px;text-align: center;background: #fff;}
.contact-section {height: 100%;padding-top: 150px;text-align: center;background: #eee;}

/*新着情報設定
-----------------------------------------------------------------------------------------------------------------*/
#news .topheader{color:#fff;font-size:2.0em;}
#news a {display: block;padding:0.5em 1.0em;margin:0;}
#news a h3 , #news a p {color: #fff;}
#news a:hover {background: #fff;text-decoration: none;border-radius: 5px;cursor:pointer;}
#news a:hover h3, #news a:hover p {color: #666;}
#news a:hover hr{border-color: #666;}

/*フッター設定
-----------------------------------------------------------------------------------------------------------------*/

footer .service-box {max-width: 400px;margin: 50px auto 0;}
footer .service-box h3 {text-align:left;border-bottom:1px dotted #333;margin-bottom: 0.6em;padding-bottom:0.2em;}
footer .service-box ul {text-align: left;list-style: none;margin-bottom:1.5em;}
footer .service-box li,li.no_listmark a {margin-bottom:0.7em;}
footer .service-box li a,li.no_listmark a {border-left:5px solid #3e70c2;display:block;width:100%;padding:0.5em 0 0.5em 0.5em;margin-left:-1.0em;}
footer .service-box ul li ul {border-left:0;margin-left:-2.0em;}

    /*フッターリンク　リスト二層目
    ------------------------------------------------------------------------------------------------------------*/
    li.no_listmark a {display:block;margin-bottom:0.7em;}
    li.no_listmark:hover {background: #fff;}
    li.no_listmark,li.no_listmark ul li {border-left:0;}

    footer .service-box li a:hover,li.no_listmark a:hover{background: #3e70c2;color: #fff;}
    footer .service-box li a:hover,li.no_listmark a:hover{color: #fff;}

    footer li.no_listmark:hover{background: #fff;}


    /*コピーライト
    ------------------------------------------------------------------------------------------------------------*/
    footer .copyright a{color:#1e50a2;}


/*各デバイス　カルーセル用設定
-----------------------------------------------------------------------------------------------------------------*/
	@media (min-width: 1400px) {
		header{min-height: 700px;margin: 0;padding: 0;display: block;} 
		header .carousel-inner{margin-bottom:10.0em;}
		header .header-content {position: absolute;top: 330px;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);-moz-transform: translateY(-50%);transform: translateY(-50%);margin-bottom:300px;}
	}/*ワイドモニター*/
	@media (min-width: 1100px) and (max-width: 1399px) {
		header{min-height: 700px;margin: 0;padding: 0;display: block;margin-bottom:-0.5em;} 
		header .header-content {position: absolute;top: 290px;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);-moz-transform: translateY(-50%);transform: translateY(-50%);}
		header .header-content .header-content-inner p {font-size: 18px;max-width: 80%;margin-left: auto;margin-right: auto;}
	}/*PC*/
	@media (min-width: 900px) and (max-width: 1099px) {
		header{min-height: 600px;margin: 0;padding:0;display: block;margin-bottom:-50px;}
		header .header-content {position: absolute;top: 200px;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);-moz-transform: translateY(-50%);transform: translateY(-50%);}
		header .header-content .header-content-inner p {font-size: 18px;max-width: 80%;margin-left: auto;margin-right: auto;}
	}/*タブレット*/
	@media (min-width: 767px) and (max-width: 899px) {
		header{min-height: 420px;margin: 0;padding:0;display: block;margin-bottom:50px;}
		header .header-content {position: absolute;top: 175px;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);-moz-transform: translateY(-50%);transform: translateY(-50%);}
		header .header-content .header-content-inner p {font-size: 18px;max-width: 80%;margin-left: auto;margin-right: auto;}
	}/*ファブレット*/
	@media(min-width:640px) and (max-width:799px){
        #carousel-generic{margin-top:-450px;}
        section#about{padding-top:0;margin-top:-450px;}
    }/*スマートフォンなど*/


/* モバイル（スマートフォンなど）向けの設定 
-----------------------------------------------------------------------------------------------------------------*/
@media (max-width: 1200px) {.nav.navbar-nav.navbar-right a{padding-left:7px;padding-right:7px;font-weight: 200;}}

@media (max-width: 1199px) {span.mobile_sitename{display:none;}#mainNav .container{width:85%;}}


/* タブレット向けの設定
-----------------------------------------------------------------------------------------------------------------*/
@media (max-width: 1099px) {.toppage__headlink a img{margin:0 auto}.toppage__headlink a span{margin-bottom:1.5em;}}

@media (max-width: 1099px) {
    .navbar.navbar-default.navbar-fixed-top.affix-top{border-width:0;}
    .navbar-default{background:#1e50a2;}
    .nav.navbar-nav.navbar-right a{padding-left:7px;padding-right:7px;font-weight: 200;font-size:90%;}
    .navbar-brand > img{width:55px;padding-top:0;margin-top:-28px;}
    .navbar-default .navbar-toggle{background:#fff;}
    .navbar-default .navbar-toggle:hover{background:#fff;color:#1e50a2;}
    .container{width:90%;}
    .navbar-default.affix {background-color: #1e50a2;}
    .navbar-default .navbar-collapse{border-top:none!important;}
    ul.nav.navbar-nav.navbar-right li a{color:#fff;}
    .navbar-nav > li a{width:auto;max-width:250px;font-size:0.8em!important;color:#fff!important;font-weight:100!important;}
    li.translate__link a{padding:14px;border:3px solid #fff;border-radius: 3px;margin:0 2px;display:block;line-height:1.3em;width:70px;margin-top:2px;}
    li #translate-this:hover,li.translate__link:hover{opacity: 0.5;}
    li #translate-this a,a#english_link{line-height: 1.20em;padding:10px!important;margin-top:5px;font-size:0.8em;}
}

@media (max-width: 1030px) {span.mobile_sitename{display:none;}.btn-default{margin-bottom:30px;}}

@media (max-width: 993px) {
    .lp{padding-left:15px;padding-right:15px;}
    .rp{padding-right:15px;padding-left:15px;}
}

@media (min-width: 992px) {.service-box {margin: 20px auto 0;}}

@media (min-width: 971px) {.nav > li > a{padding:9px;margin-top:5px;font-weight:normal;}}

@media(min-width:960px) {
    .navbar {padding: 20px 0;-webkit-transition: background .5s ease-in-out,padding .5s ease-in-out;-moz-transition: background .5s ease-in-out,padding .5s ease-in-out;transition: background .5s ease-in-out,padding .5s ease-in-out;background-color: #1e50a2;}
    .top-nav-collapse {padding: 0;}
    .top-nav-collapse img{height: 58px;}
    .navbar-brand > img{width:60px;padding-top:10px;}
    .navbar-default .navbar-toggle{background:#fff;}
    .navbar-default .navbar-toggle:hover{background:#fff;color:#1e50a2;}
    .navbar-collapse{border-top:0;box-shadow: none;}
    ul.nav.navbar-nav.navbar-right a{color:#fff;}
    .navbar-default {background-color:#1e50a2;border-bottom: none;}
    .navbar-default .navbar-header .navbar-brand {color: rgba(255, 255, 255, 0.7);}
    .navbar-default .navbar-header .navbar-brand:hover,
    .navbar-default .navbar-header .navbar-brand:focus {color: white;}
    .navbar-default .nav > li > a,
    .navbar-default .nav > li > a:focus {color: rgba(255, 255, 255, 0.7);}
    .navbar-default .nav > li > a:hover,
    .navbar-default .nav > li > a:focus:hover {color: white;}
    .navbar-default.affix {background-color: #1e50a2;}
    .navbar-default.affix .navbar-header .navbar-brand {color: #fff;font-size: 14px;}
    .navbar-default.affix .navbar-header .navbar-brand:hover,
    .navbar-default.affix .navbar-header .navbar-brand:focus {color: #fff;}
    .navbar-default.affix .nav > li > a,
    .navbar-default.affix .nav > li > a:focus {color: #fff;}
    .navbar-default.affix .nav > li > a:hover,
    .navbar-default.affix .nav > li > a:focus:hover {color: #d0d0d0;}
}

@media (max-width: 899px) {
    .navbar-brand > img{width:60px;padding-top:0;margin:-10px -10px 0 0;width:50px;}
    .navbar-nav > li a{margin-left:-20px;}
    li.translate__link{line-height: 1.0em;display:block;}
    li.translate__link a{line-height: 1.0em;margin:0.5em 0 0.5em 0.5em;padding:0.95em;display:block;}
    li #translate-this a,a#english_link{line-height: 1.1em;padding:0.5em;margin-top:0.5em;}
}


@media (max-width: 799px) {
    .navbar-brand > img{width:60px;padding-top:0;margin:-10px -10px 0 0;width:50px;}
    .navbar-nav > li a{margin-left:-20px;}
    li.translate__link{line-height: 1.0em;margin:-6px 0 0 1.0em;padding:0.5em 0.3em 0 0.3em;display:block;}
}


@media (max-width: 767px) {
    #carousel-generic.carousel.slide{margin-top:0px;}
    a.navbar-brand img{width:50px;margin-top:-12px}
}


/* モバイル（スマートフォンなど）向けの設定 
-----------------------------------------------------------------------------------------------------------------*/
@media (max-width: 700px) {
    span.mobile_sitename{display:none;}
    .carousel-inner img{padding-top:10%;}
    .carousel-caption {margin-bottom:0;height:60%;}
    .carousel-caption h2.carouselHeader{font-size:1.2em!important;margin-top:10%;}
    .carousel-caption h2.carouselHeader-eng{font-size:1.0em!important;margin-top:10%;}
    .carousel-caption hr,.carousel-caption p{visibility:hidden;}
    .topheader {width:100%;}
    .topheader span {position: relative;display: inline-block;margin: 0;padding: 0;text-align: center;}
    .topheader span::before,
    .topheader span::after {position: absolute;top: 0;content: none;width: auto;height: 0;}
    .topheader span::before {right:0;}
    .topheader span::after {left:0;}
    .navbar-default.affix {background-color: #1e50a2;}
    .navbar-brand .header__title{float:right;display:block;}
    .navbar-right{border-top:1px dotted #fff;margin-top:15px;}
    .navbar-default .navbar-toggle{background:#fff;}
    .navbar-default .navbar-toggle:hover{background:#fff;color:#1e50a2;}

    /*翻訳ボタン
    ------------------------------------------------------------------------------------------------------------*/
    li.translate__link a,a.translate-this-button{margin:1.0em;padding:1.0em;display:block;border:0!important;color:#fff;}

    /*検索フォーム
    ------------------------------------------------------------------------------------------------------------*/
    #custom-search-input {margin-top:120px;padding: 0;}
    #custom-search-input form .search-query {font-size: 1.0em;height:2.0em;margin-left:10px;}

    /*検索フォーム
    ------------------------------------------------------------------------------------------------------------*/
    .toppage__headlink a{margin-bottom:30px;padding:0;display:block;}
    .toppage__headlink a img{margin:0 auto;}
    .toppage__headlink a span{text-align:center;}

    section.toppage__shortcut{table-layout: auto;display:block;}
    section.toppage__shortcut article{display:block;}

    #news .topheader{color:#fff;margin-bottom:-15px;}
    #news a {background:transparent;padding:0 10px;}
    #news a h3{font-size:1.5em;}
    #news a p {font-size:0.9em;letter-spacing: 0.1em;}
    #news a:hover {opacity:0.3;background:transparent!important;}
    #news a:hover p, #news a:hover h3{color:#fff;}
    #news a:hover hr{border-color:#fff;}
    #news .mb50{margin-bottom:0;}
}

@media(max-width:699px) {
    .navbar-nav > li a{margin-left:-10px;}
    li.translate__link a{margin-left:-20px;margin-top:15px;}
    li #translate-this a,a#english_link{margin-left:-23px;}
}






/*Safariのみ	
-----------------------------------------------------------------------------------------------------------------*/
@media screen and (-webkit-device-pixel-ratio:1400px) {
    ::i-block-chrome, header{min-height: 750px;margin: 0;padding: 0;display: block;} 
	::i-block-chrome, header .carousel-inner{margin-bottom:3.0em;}
	::i-block-chrome, header .header-content {position: absolute;top: 300px;-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);transform: translateY(-50%);margin-bottom:300px;}
}
