@charset "utf-8";


/**
 *
 * Style css
 *
 */

/*
 *
 *  FontSize
 *
 *  font-size: 0.8em   ← 8px
 *  font-size: 1em     ← 10px
 *  font-size: 1.2em   ← 12px
 *
 */


/* =============================================================================
   common
   ========================================================================== */

img { -ms-interpolation-mode: bicubic; max-width:100%; height: auto; width /***/:auto; /* for ie8 */ }
a:hover { text-decoration: none; }

a img { transition: .3s; }
a img:hover { opacity: 0.7; }

.common-sentence { font-size: 1.4em; line-height: 2; }

.common-section { margin: 0 auto; text-align: left; }
.common-section { width: 980px; }

.common-section-contents { width: 89.855%; margin: 0 auto; }
.common-block .common-inner .common-section-contents { width: 91.44%; }

.common-block { background-color: #fff; padding: 6px; }
h2.common-block { background-color: #eef9ea; font-size: 1.15em; }
.common-block .common-inner { padding: 21px 0 15px; }

.common-animate {
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.common-animate img { max-width:208px;   max-height: 143px; }


ul.curriculum-link li { width: 208px; _width: 208px; height: 189px; _height: 189px; }
ul.curriculum-link li section { padding:0px;  text-align: center;  }
/*ul.curriculum-link li section h5 { margin-bottom: 24%; }*/
/*ul.curriculum-link li section h5 img { max-width: 208px; max-height: 143px; }*/
ul.curriculum-link li section p { overflow:hidden; margin:0 auto; }
/*ul.curriculum-link li section p img { max-width: 208px; max-height: 52px; }*/

ul.main-box-nav li { width: 220px; }
ul.main-box-nav li a { display: block; background-color: #fff; }

ul.other-box-nav li { width: 220px; text-align:right; margin-right: 15px; margin-bottom: 15px; }
ul.other-box-nav li a { display: block; background-color: #fff; }
ul.other-box-nav li a .inner { position: relative; height: 51px; }
ul.other-box-nav li a span { background: #CBDBAB; display:block; line-height:51px; font-size:14px; font-weight:bold; padding-right:10px; }
ul.other-box-nav li a .left-img { position: absolute; top: 15px; left: 15px; }
ul.other-box-nav li a .right-img { position: absolute; top: 15px; right: 20px; }
ul.other-box-nav li.entry a .inner, ul.other-box-nav li.reservation a .inner { background-color: #E8F7E1; }
ul.other-box-nav li.company a .inner { background-color: #4a4a4a; }
ul.other-box-nav li.reservation .left-img { max-width: 34px; max-height: 31px; }
ul.other-box-nav li.reservation .right-img { max-width: 79px; max-height: 28px; }
ul.other-box-nav li.entry .left-img { max-width: 38px; max-height: 29px; }
ul.other-box-nav li.entry .right-img { max-width: 61px; max-height: 28px; }
ul.other-box-nav li.company .left-img { max-width: 27px; max-height: 32px; }
ul.other-box-nav li.company .right-img { max-width: 63px; max-height: 31px; }

.briefing { width: 678px; _width: 690px; height: 198px; _height: 210px; overflow: hidden; }
.briefing .inner { background-color: #f9f9f9; padding: 21px 0 17px; position: relative; }
.briefing .osaka { width: 57px; height: 24px; line-height: 24px; color: #fff; background-color: #4a4a4a; text-align: center; font-size: 1.3em; position: absolute; top: 0; left: 0; }
.briefing h1 { text-align: center; margin-bottom: 11px; }
table.briefing-table { float: left; margin-left: 22px; width: 485px; font-size: 1.2em; margin-top: 2px; }
table.briefing-table th, table.briefing-table td { border: 1px solid #b21f37; padding: 1px 6px; }
table.briefing-table th { color: #b21f37; font-weight: bold; text-align: center; background-color: #ebebeb; }
table.briefing-table td { background-color: #fff; }
table.briefing-table td span { float: right; }
table.briefing-table tr.exit th, table.briefing-table tr.exit td { background-color: #525252; color: #dadada; border-bottom: 1px solid #dadada;  }
table.briefing-table tr.exit th { border-right: 1px solid #dadada; }
.lt-ie8 table.briefing-table td span { float: none; }
table.briefing-table td span.soldout { color: #b21f37; }
table.briefing-table td span.vacant { color: #028cb6; }
table.briefing-table td span.few { color: #FF6C0B; }
.briefing .briefing-sentence { float: right; margin-right: 17px; position: relative; height: 127px;}
.lt-ie8 .briefing .briefing-sentence { position: static;}
.briefing .briefing-sentence p { font-size: 1.1em; line-height: 1.7; width: 140px; }
.briefing .briefing-sentence .btn-reserve { display: block; background-color: #b21f37; height: 25px; line-height: 25px; width: 127px; text-align: center; font-size: 1.3em; font-weight: bold; color: #fff; position: absolute; bottom: 0; left: 0; }
.lt-ie8 .briefing .briefing-sentence .btn-reserve { position: static; }

.main-contact-area .common-inner { text-align: center; }
.main-contact-area h1 { width: 100%; margin: 0 auto 15px; padding: 12px 0; font-size: 2em; font-weight: bold; color: #fff; background-color: #494949; }
.main-contact-area p.sentence {  font-size: 1.4em; line-height: 1.9;  }
.main-contact-area .btn-reservation { width: 79%; margin: 15px auto 21px; display: block; padding: 12px 0 10px; font-size: 1.8em; font-weight: bold; color: #fff; background-color: #178da2;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.main-contact-area .btn-entry { width: 79%; margin: 0 auto 25px; display: block; padding: 12px 0 10px; font-size: 1.8em; font-weight: bold; color: #fff; background-color: #c82034;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.main-contact-area .tel-area dt { font-size: 1.4em; margin-bottom: 10px; }
.main-contact-area .tel-area dd { font-size: 3em; font-weight: bold; letter-spacing: .1em; text-indent: .1em; line-height: 1; }
.main-contact-area .tel-area-sp { display: none; }

.pagetop { /*position: absolute; bottom: 0; right: 0; display: block; width: 64px; height: 64px; background: url("images/common/pagetop-over.png") top left no-repeat;*/ clear:both; text-align:right; margin-top:30px; }


.red-title { border-left: 3px solid #c82034; padding-left: 5px; line-height: 1; font-size: 1.8em; font-weight: bold; padding-top: 4px; }
.dashed-title { font-size: 1.8em; font-weight: bold; border-bottom: 1px dashed #a0a0a0; margin-bottom: 15px; padding-bottom: 5px; }
.red-squ-title { font-weight: bold; }
.red-squ-title span { color: #b21f37; }
.red-dashed-title { font-size: 1.8em; font-weight: bold; border-bottom: 1px dashed #a0a0a0; margin-bottom: 15px; padding-bottom: 8px; }
.red-dashed-title span { display: block; border-left: 3px solid #c82034; padding-left: 5px; line-height: 1; padding-top: 3px; }
.gray-title { background-color: #e8e8e8; font-size: 2em; font-weight: bold; padding: 8px 0 6px 10px; }

.pc-none { display: none; }

.pagetop img { width: 148px; }

/* =============================================================================
   block
   ========================================================================== */
body { height: auto; background: #fff; }
#wrapper #wrapper{ background:none; }
#site-header { background:#fff; border-bottom: #009944 5px solid; padding-bottom: 15px; }
/*#site-header .top-nav { border-top: 5px solid #4F423E; }*/
#site-header .top-nav .common-section { padding: 0; }
#site-header .top-nav ul { position: relative; }
#site-header .top-nav li { position: absolute; top: 15px; right: 0; text-align: center; font-size: 1.6em; font-weight: bold; }
#site-header .top-nav li.first-el-child, #site-header .top-nav li:first-child { right: 250px; font-size: 2.2em; font-weight: bold; }
#site-header .top-nav li.first-el-child, #site-header .top-nav li:first-child span { padding-left:10px; }
#site-header .top-nav li.last-el-child { background: #ec592d; border-radius: 5px; box-shadow: #af4915 2px 2px; }
#site-header .top-nav li.last-el-child a { display: block; color: #fff; padding: 6px 20px 4px; }
#site-header .common-section { padding: 10px 0 0; }
#site-header .site_title { float:left; margin-left: 3px; }
#site-header .site_title h1 { padding-bottom:5px; }
#site-header .site_title h2 { font-size:18px; }
#site-header .site_title h2 a { display: block; }
#site-header .site_title h2 img { max-width: 185px; }
#site-header .head-tel { float: right; padding-top: 25px; }
#site-header .head-tel img { max-width: 193px; max-height: 15px; }
#site-header .head-tel dd { font-size: 1.2em; margin-top: 5px; }
#mobile-header { display: none; }
#site-nav { position: relative; }
#site-nav nav { position: absolute; right: 0; top: 55px; }
#site-nav nav ul li { float: left; font-size: 105%; }
#site-nav nav ul li:nth-of-type(2) a { margin-left: 0; }
#site-nav nav ul li a { display: block; font-size: 1.4em; font-weight: bold; margin-left: 25px; }
#site-nav nav ul li a span { display: block; font-size: 0.6em; font-weight: normal; text-align: center; }
#site-nav .main-hide { display: none; }
.sidr { display: none; position: fixed; top: 0; height: 100%; z-index: 999999; width: 260px; overflow-x: hidden; overflow-y: auto; }
.sidr .sidr-inner { padding: 0 0 15px }
.sidr.right { left:auto;right: -260px }
.sidr.left { left:-260px;right: auto }


/*#main { margin-top: 24px; }
.left-contents, .right-contents { float: left; }
.left-contents { margin-right: 15px; width: 690px; }
.left-contents .slider { height: 423px; overflow: hidden; }
.left-contents .slider li { float: left; overflow: hidden; }
.left-contents .bx-wrapper { height: 423px; text-align: left; }
.left-contents .bx-viewport { height: 423px !important; }*/
#slider-img02, #slider-img03 { display: none; }
/*.right-contents { margin-top:30px;}
.right-contents ul.curriculum-link li { float: left; width: 23.5%; height: auto; margin-right: 2%; margin-bottom: 15px; padding: 6px; box-sizing: border-box; }*/
.right-contents ul.curriculum-link li { float: left; width: 32.5%; height: auto; margin-right: 1.25%; margin-bottom: 15px; padding: 6px; box-sizing: border-box; }
.right-contents ul.curriculum-link li:nth-of-type(3n) { margin-right: 0; }
.right-contents .briefing { margin-top: 15px; }
.grid-mdl { margin-top: 15px; }
.grid-mdl ul.main-box-nav li { float: left; margin-right: 15px; }
.grid-mdl ul.main-box-nav li.access { margin-right: 0; }
.grid-btm { margin-top: 15px; }
.grid-btm .news { width: 445px; _width: 445px; float: left; margin-right: 15px; }
.grid-btm .news .inner { height: 58px; padding:10px; background-color:#f9f9f9; }
.grid-btm .news h3 { font-size:14px; font-weight:bold; }
.grid-btm .news #rss-feed { font-size: 1.1em; padding-top: 12px; float: left; }
.grid-btm .news #rss-feed li { margin-bottom: 5px; width: 550px; }
.grid-btm .news #rss-feed li time { float: left; width: 83px; }
.grid-btm .news #rss-feed li p { float: left; }
.grid-btm .news #rss-feed li p a { text-decoration: underline;
    -webkit-transition: 0.25s;
    -moz-transition: 0.25s;
    -ms-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}
.grid-btm .news #rss-feed li p a:hover { opacity:0.5; filter: alpha(opacity=50); -ms-filter: "alpha( opacity=50 )"; }
.grid-btm ul.other-box-nav { float: left; width: 690px; }
.grid-btm ul.other-box-nav li { float: left; margin-right: 15px; }
.grid-btm ul.other-box-nav li.company { margin-right: 0; }

.under #main { margin-top: 13px; position: relative; }
.under .bread-nav { margin-bottom: 11px;  }
.under .bread-nav ul li { float: left; background: url("images/common/bread-arrow.png") center right no-repeat; padding-right: 14px; margin-right: 8px; font-size: 1.2em; line-height: 15px; vertical-align: middle; }
.under .bread-nav ul li.last-el-child { background: none; padding-right: 0; margin-right: 0; }
.under .bread-nav ul li:last-child { background: none; padding-right: 0; margin-right: 0; }
.under .bread-nav ul li img { max-width: 17px; max-height: 15px; }
.under .main-contents { width: 690px; float: left; }
/*.under .side-contents { width: 220px; float: right; margin-bottom: 80px; }*/
.under .side-contents ul li { margin-bottom: 15px; }
.under .common-contents { padding-top: 15px; }
.under .under-common-title h1 { display: table-cell; vertical-align: middle; width: 213px; height: 186px; text-align: center; background-color: #f4f4f4; }
.under .under-common-title h1 span { display: inline-block; max-width: 195px; font-size: 1.6em; font-weight: bold; text-align: left; }
.under .under-common-title img { float: right; }
.under .common-btn { display: block; padding: 12px 0 10px; font-size: 1.4em; font-weight: bold; color: #fff; background-color: #c82034; text-align: center; }

/* .about-school #contents02 .common-block { padding-top: 48px; padding-bottom: 30px; } */
.about-school #contents02 h1.main-title { text-align: center; margin-bottom: 48px; }
.about-school .three-principle-contents { margin-bottom: 46px; }
.about-school .three-principle03 { margin-bottom: 0; }
.about-school .three-principle-contents h1 { margin-bottom: 32px; padding-top: 32px; }
.about-school .three-principle-contents .photo { float: right; }
.about-school #contents03 .common-block { padding-bottom: 30px; }
.about-school #contents03 .under-common-title { margin-bottom: 40px; }
.about-school #contents03 .sentence01 { margin-bottom: 24px; }
.about-school #contents03 .sentence01 h1 { margin-bottom: 24px; text-align: center; }
.about-school #contents03 .aboutcgc-contents { margin-bottom: 30px; }
.about-school #contents03 .aboutcgc-contents img { float: right; margin-left: 40px; }
.about-school #contents03 .common-btn { width: 180px; }
.about-school #contents04 .under-common-title { margin-bottom: 40px; }
.about-school #contents04 .instructors-contents { margin-bottom: 32px; }
.about-school #contents04 .instructors-contents h1 { margin-bottom: 12px; }
.about-school #contents04 .instructors-contents h1 span { border-left: 3px solid #c82034; padding-left: 5px; line-height: 1; font-size: 1.8em; font-weight: bold; display: inline-block; padding-top: 3px; }
.about-school #contents04 .instructors-contents .right-img { float: right; margin-left: 37px; }
.about-school #contents04 .instructors-contents .left-img { float: left; margin-right: 30px; }
.about-school #contents04 .instructors-contents .left-contents { width: 48%; float: left; }
.about-school #contents04 .instructors-contents .right-contents { width: 48%; float: right; }
.about-school #contents05 .common-block { padding-bottom: 32px; }
.about-school #contents05 .under-common-title { margin-bottom: 23px; }

.facility #contents01 .common-block { padding: 0 0 35px; }
.facility #contents01 .facility-contents { padding-top: 30px; }
.facility #contents01 h1 { margin-bottom: 9px; }
.facility #contents01 .red-title { display: block; margin: 0; margin-top: 13px; }
.facility #contents02 .common-block { padding-bottom: 23px; }
.facility #contents02 .under-common-title { margin-bottom: 26px; }

.curriculum .curriculum-bnr dl { position: relative; }
.curriculum .curriculum-bnr dl dd { position: absolute; bottom: 12%; left: 50%; margin-left: -13.86%; width: 27.72%;  }
.curriculum #contents04 dl dd { bottom: 16.95%; left: 62.97%; margin-left: 0; }

.curriculum-under dl.lecture dt { background: url("images/curriculum/lecture-title-img.png") top left no-repeat; padding-left: 20px; line-height: 16px; font-size: 1.8em; font-weight: bold; }
.curriculum-under dl.item dt { background: url("images/curriculum/item-title-img.png") top left no-repeat; padding-left: 20px; line-height: 21px; font-size: 1.8em; font-weight: bold; }
.curriculum-under dl.voice dt { background: url("images/curriculum/voice-title-img.png") top left no-repeat; padding-left: 20px; line-height: 18px; font-size: 1.8em; font-weight: bold; }
.curriculum-under dl.lecture dd,
.curriculum-under dl.item dd,
.curriculum-under dl.voice dd { margin-top: 5px; line-height: 1.6; }
.curriculum-under dl.item dd { margin-top: 2px; }
.curriculum-under dl.voice dd { margin-top: 3px; }
.curriculum-under #contents02 .common-block, .curriculum-under #contents03 .common-block { padding-bottom: 33px; }
.curriculum-under .basic-summary-section, .curriculum-under .option-summary-section { margin-top: 30px; }
.curriculum-under .basic-summary-section h1 { text-indent: .3em; letter-spacing: .3em; width: 80px; font-size: 1.8em; color: #fff; font-weight: bold; text-align: center; padding: 2px 0 1px; background-color: #c82034; margin-bottom: 15px; }
.curriculum-under .basic-summary-section h2 { position: relative; }
.curriculum-under .basic-summary-section h2 img { position: absolute; bottom: 10px; right: 0; }

.howto-join #contents01 .under-common-title { margin-bottom: 18px; }
.howto-join #contents02 .under-common-title,
.howto-join #contents03 .under-common-title { margin-bottom: 25px; }
.howto-join .flow { margin-top: 15px; }
.howto-join .flow section { background: url("images/howto-join/arrow.png") bottom center no-repeat; padding-bottom: 37px; margin-bottom: 15px; }
.howto-join .flow section.last-el-child { padding-bottom: 18px; margin-bottom: 0; background: none; }
.howto-join .flow section:last-child { padding-bottom: 18px; margin-bottom: 0; background: none; }
.howto-join .flow section .inner { border-bottom: 1px dashed #a0a0a0; padding-bottom: 10px; }
.howto-join .flow section.last-el-child .inner { border-bottom: none; padding-bottom: 0; }
.howto-join .flow section:last-child .inner { border-bottom: none; padding-bottom: 0; }
.howto-join .flow section h1 { margin-bottom: 10px; }
.howto-join .flow section h1 span { float: left; width: 83.6%; _width: 86.6%;  display: block; padding: 7px 1.2% 5px 1.8%; font-size: 1.6em; font-weight: bold; background-color: #f4f4f4; }
.howto-join .flow section h1 span.step { width: 10.4%; _width: 13.4%; background-color: #b21f37; color: #fff; }
.howto-join .howto { margin-bottom: 22px; }
.howto-join .howto ul li {margin-left: 2em; text-indent: -2em; }
.howto-join #contents03 .common-block { padding-bottom: 20px; }
.howto-join .pc-none { color: #b21f37; font-weight: bold; }
.howto-join .pc-none a { color: #b21f37; text-decoration: underline; }
.howto-join .cost-list { margin-bottom: 20px; }
.howto-join .cost-list h1 { margin-bottom: 12px; }
.howto-join .cost-list .cost-sentence { font-size: 1.2em; line-height: 1.5; text-align: right; margin-top: 10px; }
.howto-join .cost-list .cost-table { width: 100%; border: 2px solid #3f3f3f; }
.howto-join .cost-list .cost-table th,
.howto-join .cost-list .cost-table td { border: 1px solid #a0a0a0; font-size: 1.2em; line-height: 1.7; padding: 5px 0 3px; vertical-align: middle; }
.howto-join .cost-list .cost-table th { text-align: center; background-color: #dadada; }
.howto-join .cost-list .cost-table td { padding-left: 7px; padding-right: 7px; }
.howto-join .cost-list .cost-table th.top-none,
.howto-join .cost-list .cost-table td.top-none { border-top: none; }
.howto-join .cost-list .cost-table th.btm-none,
.howto-join .cost-list .cost-table td.btm-none { border-top: none; }
.howto-join .cost-list .cost-table th.col-first { width: 125px; padding-left: 0; padding-right: 0; }
.howto-join .cost-list .cost-table th.col-second { width: 220px; padding-left: 0; padding-right: 0; text-align: center; }
.howto-join .cost-list .cost-table th.col-third { width: 85px; padding-left: 0; padding-right: 0; }
.howto-join .cost-list .cost-table th.darkgray { background-color: #3f3f3f; border: none; color: #fff; }
.howto-join .cost-list .cost-table td.lightgray { background-color: #f7f7f7; }

.form .form-sentence { margin-top: 20px; margin-bottom: 15px; }
.form .form-sentence a { color: #0068b7; text-decoration: underline; }
.form .thanks-title { font-size: 1.7em; }

#mail-form table { width: 100%; font-size: 1.3em; }
#mail-form tbody tr{ display: table-row; }
#mail-form tbody th,
#mail-form tbody td{ display: table-cell; }
#mail-form table th, #mail-form table td { padding: 17px 0; padding-bottom: 15px; border-bottom: 1px dashed #a0a0a0; vertical-align: middle; }
#mail-form table th { width: 26%; }
#mail-form table td { padding-left: 22px; }
#mail-form span.form-txt { display: block; margin-top: 10px; }
#mail-form table tr.wide-row th, #mail-form table tr.wide-row td { width: 100%; border: 0; padding-top: 17px; padding-bottom: 10px; }
#mail-form table tr.wide-row td { width: 100%; border: 0; padding-left: 0; padding-bottom: 0; padding-top: 0; }
#mail-form input.text-box,
#mail-form textarea { border: 1px solid #dddddd;}
#mail-form input.text-box { width: 60%; height: 26px; line-height: 26px;}
#mail-form input.narrow { width: 12%; }
#mail-form input.middle { width: 25%; }
#mail-form input.wide { width: 70%; }
#mail-form textarea { width: 100%; height: 264px; }
#mail-form input.radio-btn { vertical-align: -1px; }
#mail-form label { margin-left: 2px; margin-right: 5px; }
#mail-form table td.error span.validationMessage { color: #FF3E3E; font-weight: bold; font-size: 0.9em; display: block; margin-top: 5px; }
#mail-form table td.error input.text-box,
#mail-form table td.error input.radio-btn,
#mail-form table td.error select,
#mail-form table td.error textArea { background-color: #FFD0D0; }
#form-btn-area { margin: 25px auto 0; width: 254px; }
#form-btn-area a { display: block; float: left; margin-right: 10px; font-size: 1.6em; line-height: 40px; width: 122px; text-align: center;
    -webkit-transition: 0.25s;
    -moz-transition: 0.25s;
    -ms-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}
#form-btn-area a:hover { opacity:0.6; filter: alpha(opacity=60); -ms-filter: "alpha( opacity=60 )"; }
#form-btn-area .first-btn { width: 122px; margin: 0 auto; }
#form-btn-area .next-btn { width: 254px; margin: 0 auto; }
#form-btn-area a#btn-mail-send,
#form-btn-area a#btn-mail-confirm { margin-right: 0;}
#form-btn-area a#btn-mail-confirm { color: #fff; background: #b21f37; }
#form-btn-area a#btn-mail-back { color: #fff; background: #2c2c2c;}
#form-btn-area a#btn-mail-send { color: #fff; background: #b21f37; }

.reservation .reservation-table { width: 100%; font-size: 1.4em; line-height: 1.7; margin: 15px 0; }
.reservation .reservation-table th, .reservation .reservation-table td { border: 1px solid #d6d6d6; padding: 5px 0.99% 3px 0.99%; }
.reservation .reservation-table th { width: 21.29%; font-weight: bold; background-color: #f4f4f4; }
.reservation .reservation-table a { text-decoration: underline; }
.reservation .reservation-table a.tel { text-decoration: none; }
.reservation #contents01 .under-common-title, .reservation #contents02 .under-common-title { margin-bottom: 18px; }
.reservation #contents03 .briefing { height: auto; }
.reservation #contents03 table.briefing-table { float: none; width: 636px; }
.reservation #contents03 .btn-reservation { width: 60%; margin: 18px auto 0; display: block; text-align: center; padding: 8px 0 6px; font-size: 1.8em; font-weight: bold; color: #fff; background-color: #c82034;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
}

.privacy #contents01 { line-height: 1.7; }
.privacy .indent {margin-left: 2em; text-indent: -2em; }
.privacy a { color: #b21f37; }
.privacy .en {
    white-space: pre;           /* CSS 2.0 */
    white-space: pre-wrap;      /* CSS 2.1 */
    white-space: pre-line;      /* CSS 3.0 */
    white-space: -pre-wrap;     /* Opera 4-6 */
    white-space: -o-pre-wrap;   /* Opera 7 */
    white-space: -moz-pre-wrap; /* Mozilla */
    white-space: -hp-pre-wrap;  /* HP Printers */
    word-wrap: break-word;      /* IE 5+ */
}
.privacy .mark { float: right; margin-left: 20px; margin-bottom: 5px; }

.terms #contents01 { line-height: 1.7; }
.terms .indent {margin-left: 2em; text-indent: -2em; }
.terms #contents01 a { color: #b21f37; }

.company table { width: 100%; margin-top: 15px; word-break:break-all; }
.company table th, .company table td { padding: 11px 0; border-bottom: 1px dashed #a0a0a0; }
.company table th { background: url(../img/common/arrow_gr.gif) no-repeat left 22px; padding-left: 20px; }
.company table tr.last-el-child th, .company table tr.last-el-child td { border-bottom: none; }
.company table tr:last-child th, .company table tr:last-child td { border-bottom: none; }
.company table th { width: 35%; vertical-align: top; }
.company table .place { margin-bottom: 15px; }
.company table .place .left-contents { float: left; }
.company table .place .right-contents { float: right; width: 127px; }
.company table .place .right-contents a { display: block; padding: 5px 0 3px; font-size: 0.85em; text-align: center; color: #fff; background-color: #434343; }
.company #contents01 a.red { color: #b21f37; }
.company .en {
    white-space: pre;           /* CSS 2.0 */
    white-space: pre-wrap;      /* CSS 2.1 */
    white-space: pre-line;      /* CSS 3.0 */
    white-space: -pre-wrap;     /* Opera 4-6 */
    white-space: -o-pre-wrap;   /* Opera 7 */
    white-space: -moz-pre-wrap; /* Mozilla */
    white-space: -hp-pre-wrap;  /* HP Printers */
    word-wrap: break-word;      /* IE 5+ */
}

.access .map-img { margin-top: 20px; }
.access .access-sentence { margin-top: 22px; margin-bottom: 35px; line-height: 1.7; }
.access .access-sentence dt { border-bottom: 1px dashed #a0a0a0; margin-bottom: 8px; padding-bottom: 5px; }


/* footer */
/*#site-footer .foot-top { border-top:#4F423E solid 5px;}*/
#site-footer .foot-top .contents { width: 578px; float: right; padding-top: 33px; text-align: center; }
#site-footer .foot-top .contents h1 { margin-bottom: 15px; }
#site-footer .foot-top .contents h1 img { max-width: 163px; max-height: 58px; }
#site-footer .foot-top .contents ul.foot-nav { text-align: left; margin-top: 38px; height: 220px; }
#site-footer .foot-top .contents ul.foot-nav li { float: left; font-size: 1.3em; height: 220px; margin-right: 10px; background: url("images/common/border01.png") top right repeat-y; }
#site-footer .foot-top .contents ul.foot-nav li.foot-nav04 { margin-right: 0; background: none; }
#site-footer .foot-top .contents ul.foot-nav li dl dt { font-weight: bold; margin-bottom: 14px; padding-left: 0px; }
#site-footer .foot-top .contents ul.foot-nav li dl dd { margin-bottom: 8px; }
#site-footer .foot-top .contents ul.foot-nav li ul li { float: none; font-size: 1em; height: auto; margin-right: 0; background: none; font-weight: bold; margin-bottom: 10px; }
#site-footer .foot-top .contents ul.foot-nav li.foot-nav01 dl { width: 107px; margin-right: 9px; }
#site-footer .foot-top .contents ul.foot-nav li.foot-nav02 dl { width: 140px; margin-right: 9px; }
#site-footer .foot-top .contents ul.foot-nav li.foot-nav03 dl { width: 130px; margin-right: 10px; }
#site-footer .foot-top .contents ul.foot-nav li.foot-nav04 dl { width: 143px; }
#site-footer .foot-btm { background: #009944; color: #fff; padding: 2px 0; }
/*#site-footer .foot-btm p:nth-of-type(1) { padding-top:15px; font-size:0.8em; }*/
#site-footer .foot-btm .fb-like { float: left; margin-left: 10px; padding-top: 5px; }
#site-footer .foot-btm .footbtm-nav { float: right; margin-right: 15px; }
#site-footer .foot-btm .footbtm-nav li { float: left; margin-right: 15px; }
#site-footer .foot-btm .footbtm-nav li a { color: #fff; }

.foot-info{ background:#f5efc6; margin: 0 auto 15px; font-size:1.2em; text-align:left;  }
.foot-info ul { width: 900px; margin: 0 auto; padding: 25px 0; }
.foot-info ul li.first-el-child { float: left; width: 42%; }
.foot-info ul li.first-el-child .res-sp { display: none; }
.foot-info ul li.last-el-child { float: right; width: 38%; }

.foot-link { width: 900px; margin: 0 auto 15px; }
.foot-link p { float: left; width: 220px; }
.foot-link ul { float: right; font-size:1.2em; }
.foot-link ul li { float: left; margin-left: 20px; padding-left: 15px; position: relative; }
.foot-link ul li:before { content: ">"; position: absolute; left: 0;  }

.foot-nav.foot-add { padding:15px 0; border-top: #CCC solid 1px; font-size:1.2em; }
.foot-nav.foot-add div { width: 900px; margin: 0 auto; }
.foot-nav.foot-add h2 { float: left; width: 24.5%; font-weight:bold; }
.foot-nav.foot-add h2 br { display: none; }
.foot-nav.foot-add h2 img { max-width: 220px; }
.foot-nav.foot-add ul { float: right; width: 74%; }
.foot-nav.foot-add ul li { width: 28%; float:left; }
.foot-nav.foot-add ul li.first-el-child { width: 44%; }
.foot-nav.foot-add p { padding-top: 10px; }


/* コンテンツ追加 */
.content-naniwa { border: solid 1px #ccc; background: #fff; padding: 5px; margin: 15px 6px 0; text-align: left; }
.content-naniwa h2 { color: #4F423E; margin:5px; padding: 0px 5px 0px 5px; font-size: 14px; font-weight: bold; border-left: solid 5px #4F423E; }
.content-naniwa p { margin: 5px; padding: 5px; font-size: 12px; }
.content-naniwa strong, .content-naniwa em { font-weight: normal; }

/*追跡ボタン*/
.sidebtn .pc { padding: 0; margin: 0 auto; position: fixed; top: 15%; right: 0; z-index: 9999; }
.sidebtn .pc li { margin: 0 0 1em; }


/* レスポンシブ画像切り替え */
.img-change img { visibility: hidden; }

