@charset "utf-8";


/*=================================
1: reset-CSS
2: setting
3: header
4: footer
5: common-content
6: other
=================================*/


    .removefixed{
        position: relative!important;
    }
    .fixed{
        position: fixed;
    }


/* 1: reset-CSS
================================== */


/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    font-weight: normal;
}

body {
    line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
    display: block;
}

li {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}


/* change colours to suit your needs */

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}


/* change colours to suit your needs */

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}


/* change border colour to suit your needs */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}


/* 2: setting
================================== */

*,
*:before,
*:after {
    box-sizing: border-box;
}


/* clearfix*/

.cf:after {
    content: "";
    clear: both;
    display: block;
}

.clear {
    clear: both;
}

html {
    overflow: auto;
    min-width: 1020px;
    font-size: 62.5%;
}

body {
    overflow: auto;
    min-width: 1020px;
    font-family: 'Yu Gothic', '游ゴシック', '游ゴシック体', YuGothic, Meiryo, 'Hiragino Kaku Gothic Pro', メイリオ, 'ヒラギノ角ゴ Pro W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-feature-settings: "palt";
    font-weight: 500;
    color: #323232;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.7;
    -webkit-print-color-adjust: exact;
    /* baskground_print */
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-font-smoothing: antialiased;
    /* safari_textBold*/
    -webkit-text-size-adjust: 100%;
    /* safari_textBold*/
}

@media all and (-ms-high-contrast:none) {
    body {
        font-family: Meiryo, 'Hiragino Kaku Gothic Pro', メイリオ, 'ヒラギノ角ゴ Pro W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    }
}

img {
    display: block;
    line-height: 0;
}

input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}


/* link */

a {
    color: #0A75B8;
    text-decoration: none;
    -webkit-transition: all .2s;
    transition: all .2s;
}

a:hover {
    color: #1ba3f9;
}

a img {
    -webkit-transition: all .2s;
    transition: all .2s;
}

a img:hover {
    opacity: .7;
}

a.hovre_line:hover {
    text-decoration: underline;
}


/* 3: header
================================== */

#header {
    background: rgba(0, 25, 45, 0.8);
    z-index: 33;
    /* position: absolute; */
    top: 0;
    width: 100%;
    min-width: 1020px;
        position: fixed;
        top: 0;
}

.header_inr {
    position: relative;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
    padding: 20px 10px 0;
}

.logo {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 999999;
}

.nomain #header {
    background: rgba(0, 25, 45, 1);
}


/* === gnav === */

.menu-container {
    width: 100%;
    margin: 0 auto;
    z-index: 33;
}

.navGlobal {
    position: relative;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    /* Safari */
    justify-content: flex-end;
    z-index: 33;
}

.navGlobal>li>a {
    display: block;
    margin: 20px 20px 25px;
    color: #FFF;
    font-size: 1.8rem;
}

.navGlobal>li.current>a,
.navGlobal>li.hover>a {
    position: relative;
    color: #F1F1F2;
}

.navGlobal>li>a::after {
    /*PCgnav_hover underline*/
    position: absolute;
    bottom: -25px;
    left: 0;
    right: 0;
    content: "";
    display: block;
    width: 0;
    height: 5px;
    z-index: 666666;
    margin: 0 auto;
    background: #F1F1F2;
}

.navGlobal>li.current>a::after,
.navGlobal>li.hover>a::after {
    width: 100%;
    box-sizing: content-box;
    border-left: 2px solid #FFF;
    border-right: 2px solid #FFF;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.MegaDrop {
    position: absolute;
    left: 0;
    display: none;
    width: 100%;
    padding: 30px 50px 20px;
    background: #F1F1F2;
    z-index: 99;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
}

.MegaDrop>h2 {
    margin-bottom: 20px;
    padding-bottom: 5px;
    border-bottom: 2px solid rgba(0, 25, 45, .2);
    box-shadow: 0 2px 0 rgba(255, 255, 255, .8);
}

.MegaDrop>h2>a {
    display: inline-block;
    padding-right: 20px;
    font-size: 2.4rem;
    font-weight: bold;
    color: #0A75B8;
    background: url(../img/cmn/icn_arwB.svg) no-repeat right center;
}

.MegaDrop>h2>a:hover {
    color: #1ba3f9;
    background: url(../img/cmn/icn_arwB_hover.svg) no-repeat right center;
}

.nav_second,
.nav_rec {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
}

.nav_second>li {
    width: 22%;
    margin-bottom: 20px;
}

.nav_second>li.mw30p {
    width: 31%;
    margin-bottom: 20px;
}

.nav_second>li.Wlong {
    width: 48%;
    margin-bottom: 20px;
}

.nav_second>li>a,
.nav_rec>li>a {
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
    color: #333;
}

.nav_second>li.fontS a {
    font-size: 1.6rem;
}

.nav_noimg li a {
    display: block;
    position: relative;
    padding: 8px 16px;
    background: #FFF;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
    border: 2px solid transparent;
    border-radius: 2px;
    color: #0A75B8;
}

.nav_noimg li a:hover {
    border: 2px solid #EEE;
    box-shadow: none;
    color: #1ba3f9;
}

.nav_noimg li a:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 8px;
    height: 1.4em;
    margin: auto;
    content: url("../img/cmn/icn_arwB.svg");
}

.nav_noimg li a:hover:after {
    content: url("../img/cmn/icn_arwB_hover.svg");
}

.nav_recimg {
    display: block;
    margin-bottom: 20px;
    text-align: center;
    line-height: 80px;
    color: #FFF;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    -webkit-transition: all .2s;
    transition: all .2s;
}

li.nav_recimg a {
    color: #FFF
}

.nav_rec>li {
    width: 32%;
    margin-bottom: 20px;
}

.nav_imgttl {
    -webkit-transition: all .2s;
    transition: all .2s;
}

.nav_imgttl:hover,
.nav_recimg:hover {
    opacity: .7;
}

.nav_imgttl a {
    display: block;
    margin-bottom: 20px;
    text-align: center;
    line-height: 80px;
    color: #FFF;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4)
}

.nav_imgttl span,
.nav_recimg span {
    padding-right: 20px;
    background: url(../img/cmn/icn_arwW.svg) no-repeat right center;
    font-size: 1.8rem;
    font-weight: bold;
}

.navBg01 {
    background: url(../img/cmn/nav_sv01.jpg) no-repeat center;
    background-size: cover;
}

.navBg02 {
    background: url(../img/cmn/nav_sv02.jpg) no-repeat center;
    background-size: cover;
}

.navBg03 {
    background: url(../img/cmn/nav_sv03.jpg) no-repeat center;
    background-size: cover;
}

.navBg04 {
    background: url(../img/cmn/nav_sv04.jpg) no-repeat center;
    background-size: cover;
}

.navBg05 {
    background: url(../img/cmn/nav_sv05.jpg) no-repeat center;
    background-size: cover;
}

.navBg06 {
    background: url(../img/cmn/nav_sv06.jpg) no-repeat center;
    background-size: cover;
}

.megaDropLayer {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    content: "";
    width: 100%;
    min-width: 1020px;
    height: 100%;
    background: url(../img/cmn/bg.png);
    z-index: 22;
}

.megaNavClose {
    position: absolute;
    top: 24px;
    right: 50px;
    width: 32px;
    height: 32px;
    border: 1px solid #00192D;
    border-radius: 2px;
    background: #FFF;
}

.megaNavClose:hover {
    color: #FFF;
    background: #00192D;
}

.megaNavClose::before,
.megaNavClose::after {
    display: block;
    content: "";
    position: absolute;
    top: 48%;
    left: 0;
    right: 0;
    width: 16px;
    margin: auto;
    border-top: 2px solid #00192D;
}

.megaNavClose::before {
    transform: skewY(-45deg);
}

.megaNavClose::after {
    transform: skewY(45deg);
}

.megaNavClose:hover::before,
.megaNavClose:hover::after {
    border-color: #FFF;
}

.dl-trigger,
.open_icn,
.sp_layer {
    display: none;
}


/* 4: footer
================================== */

footer{
  z-index:1;
  position:relative;
}

.footer_inr_top {
    background: #FAFAFA;
}

.ft_top_inr {
    position: relative;
    width: 1020px;
    margin: 0 auto;
    padding: 50px 10px;
}

.gotop a {
    position: absolute;
    right: 0;
    top: 0px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
    -webkit-justify-content: center;
    /* Safari */
    justify-content: center;
    width: 50px;
    height: 50px;
    line-height: 1.2;
    background: #3F3F3F;
    text-align: center;
    color: #FFF;
    font-size: 1.2rem;
}

.gotop a:hover {
    background: #124291;
}

.gotop2 {
    position: relative;
}

.gotop2 a {
    position: absolute;
    right: 0;
    top: 0px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
    -webkit-justify-content: center;
    /* Safari */
    justify-content: center;
    width: 50px;
    height: 50px;
    line-height: 1.2;
    background: #3F3F3F;
    text-align: center;
    color: #FFF;
    font-size: 1.2rem;
}

.gotop2 a:hover {
    background: #124291;
}

.footer_nav {
    font-size: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
}

.footer_nav li {
    font-size: 1.4rem;
}

.footer_nav li a {
    color: #323232;
}

.footer_nav li a:hover {
    color: #0A75B8;
}

.footer_nav>li {
    width: 20%;
    vertical-align: top;
    font-size: 1.6rem;
    font-weight: bold;
}

.footer_nav>li>span {
    font-size: 1.6rem;
    font-weight: bold;
}

.footer_nav>li:last-child {
    padding-right: 0;
}

.footer_nav_sec {
    margin-top: 10px;
}

.footer_nav_sec li>a:hover {
    text-decoration: underline;
}

.footer_nav_sec li {
    margin-bottom: 5px;
}

.footer_nav_ttl li {
    margin-bottom: 10px;
    font-size: 1.6rem;
    font-weight: bold;
}

.footer_inr_btm {
    padding: 30px 0;
    background: #3F3F3F;
}

.footer_inr_btm img {
    width: 180px;
    height: auto;
    margin: 0 auto;
}

.copy {
    padding: 20px 0;
    text-align: center;
    font-size: 1.2rem;
    font-style: italic;
    color: #FFF;
}


/* 5: common-content
================================== */

#main section:last-child {
    padding-bottom: 100px;
}

.sec_mainimg {
    min-height: 300px;
    padding-top: 140px;
}

.third_mainimg {
    min-height: 250px;
    padding-top: 115px;
}

.main_img_inr {
    width: 100%;
    max-width: 1120px;
    min-width: 1020px;
    margin: 0 auto;
    padding: 0 10px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
    justify-content: center;
    align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    flex-flow: column;
}

.nomain #main {
    padding-top: 95px;
}

.nomain .layoutWrap_inr {
    padding-right: 20px;
    padding-left: 20px;
}

.layoutWrap {
    width: 100%;
    max-width: 1120px;
    min-width: 1020px;
    margin: 0 auto;
    padding: 0 10px;
}

.layoutWrap_inr {
    width: 100%;
    max-width: 900px;
    min-width: 900px;
    margin: 0 auto;
}

.lW_pt40pb50 {
    padding-top: 40px;
    padding-bottom: 50px;
}

.lW_pt0pb50 {
    padding-bottom: 50px;
}

.lW_pt40pb0 {
    padding-top: 40px;
}

.inrbox_p10 {
    padding: 10px;
}

.inrbox_p30 {
    padding: 30px;
}

.inrbox_p40 {
    padding: 40px;
}

.inrbox_mb20 {
    margin-bottom: 20px;
}

.inrbox_mb30 {
    margin-bottom: 30px;
}

.inrbox_mb40,
.clm3 {
    margin-bottom: 40px;
}

.layoutWrap_inr>.inrbox_mb40:last-child,
.inrbox_mb40>.inrbox_mb30:last-child,
.clm2>.inrbox_mb40:last-child,
.inrbox_mb40>.clm3:last-child {
    margin-bottom: 0;
}

.boxDesign1 {
    border: 10px solid #f1f1f2;
}

.boxDesign2 {
    border: 5px solid #f1f1f2;
    width: 49%;
}


/* breadcrumb-list */

.pankuzu {
    padding: 5px 0;
    background: #FAFAFA;
}

.pankuzu_inr {
    width: 100%;
    max-width: 1120px;
    min-width: 1020px;
    margin: 0 auto;
    padding: 0 10px;
}

.pankuzu li {
    font-size: 1.4rem;
    display: inline-block;
}

.pankuzu li:before {
    content: " > ";
}

.pankuzu li:first-child:before {
    content: none;
}

.pankuzu li a:hover {
    text-decoration: underline;
}


/*second page side-mmenu*/

#sidebar {
    float: left;
    width: 24%;
    max-width: 250px;
    margin: 0 0 100px 0;
}

#sidebar h2 span,
#sidebar h2 a {
    display: block;
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #00192d;
}

#sidebar h2 a:hover {
    color: #1ba3f9;
}

.sidebar_list {
    border-top: 1px solid #00192d;
    border-bottom: 1px solid #00192d;
}

.sidebar_list>li {
    border-bottom: 1px solid #e5e5e5;
}

.sidebar_list>li:last-child {
    border-bottom: none;
}

.sidebar_list>li>a,
.sidebar_list>li>span {
    display: block;
    padding: 15px 0 15px 20px;
    color: #333333;
}

.sidebar_list>.current>a,
.sidebar_list>.current>span,
.sidebar_list>li:hover>span,
.sidebar_list>li:hover>a {
    position: relative;
    background: #e5e5e5;
    color: #00192d;
}

.sidebar_list>.current>a::before,
.sidebar_list>.current>span::before,
.sidebar_list>li:hover>span::before,
.sidebar_list>li:hover>a::before {
    position: absolute;
    top: 15px;
    left: 0;
    display: block;
    content: "";
    width: 2px;
    height: 1.6em;
    border-left: 4px solid #00192D;
}

.sdlist_second li {
    padding: 5px 0 5px 30px;
}

.sdlist_second li:last-child {
    padding-bottom: 15px;
}

.clm2 {
    float: right;
    width: 76%;
    max-width: 820px;
    padding-left: 20px;
}

.caption {
    font-size: 1.4rem;
    text-align: center;
}

.txt_box p {
    text-indent: 1em;
    margin-bottom: 10px;
}

.txt_box2 p {
    margin-bottom: 10px;
}

.txt_box>p:last-child,
.txt_box2>p:last-child {
    margin-bottom: 0;
}

.clm3-1,
.clm3-1.tableDesign2,
.clm3-1.listDesign2 {
    width: 58%;
}

.clm3-2 {
    max-width: 310px;
    margin-left: 2%;
}

.clm3_w580 {
    width: 580px;
}

.clm3R {
    margin-left: 20px;
}

.img_list {
    width: 100%;
}

.img_list>li:first-child {
    margin-bottom: 10px;
}

.img_list img {
    width: 100%;
    border: 1px solid #e5e5e5;
}

.img_list .flexbox_sbwap li {
    width: 33%;
    max-width: 108px;
}

.maxw650 {
    max-width: 650px;
    margin: 0 auto 30px;
}

.img_w100 img {
    width: 100%;
    height: auto;
}


/* float */

.fL {
    float: left!important;
}

.fR {
    float: right!important;
}


/* common_text-decoration */

.fB {
    font-weight: bold;
}

.fS {
    font-size: 1.4rem;
}

.fbig {
    font-size: 2.1rem;
}

.tL {
    text-align: left;
}

.tC {
    text-align: center;
}

.tR {
    text-align: right;
}

.tel,
.tel:hover {
    color: #323232;
}

.red {
    color: #FF0000;
}

.green {
    color: #0e9104;
}

.tU {
    text-decoration: underline;
}

.tUd {
    border-bottom: double;
}

.border_G {
    border: 1px solid #e5e5e5;
}

.border_bB {
    border-bottom: 1px solid #00192d;
}

.nowrap {
    white-space: nowrap;
}


/* margin-padding */

.m0auto {
    margin: 0 auto!important;
}

.m1em {
    margin: 1em!important;
}

.p1em {
    padding: 1em!important;
}

.mt10 {
    margin-top: 10px!important;
}

.mt20 {
    margin-top: 20px!important;
}

.mb0 {
    margin-bottom: 0px!important;
}

.mb10 {
    margin-bottom: 10px!important;
}

.mb20 {
    margin-bottom: 20px!important;
}

.mb30 {
    margin-bottom: 30px!important;
}

.mb40 {
    margin-bottom: 40px!important;
}

.mr1em {
    margin-right: 1em!important;
}

.ml1em {
    margin-left: 1em!important;
}

.mb1em {
    margin-bottom: 1em!important;
}

.pb10 {
    padding-bottom: 10px!important;
}

.pb20 {
    padding-bottom: 20px!important;
}

.pb1em {
    padding-bottom: 1em!important;
}


/* background-color */

.bg_B {
    background: #00192d;
}

.bg_P {
    background: #dc294e;
}

.bg_B2 {
    background: #00a7ee;
}

.bg_gray {
    background: #F1F1F2;
}

.bg_white {
    background: #FFF;
}


/* title-Design */

.sec_mainttl {
    text-align: center;
    color: #FFF;
    font-size: 4rem;
    font-weight: bold;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.8);
}

.sec_mainttl span {
    display: block;
    font-size: 2.1rem;
    font-weight: bold;
    text-shadow: none;
}

.third_mainttl {
    color: #FFF;
    font-size: 4rem;
    font-weight: bold;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.8);
}

.third_main_txt {
    color: #FFF;
    font-size: 2.1rem;
    font-weight: bold;
}

.ttlDesign1 {
    margin-bottom: 20px;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    color: #303030;
}

.ttlDesign1 a {
    color: #303030;
}

.ttlDesign1 a:hover {
    color: #0A75B8;
}

.ttlDesign2 {
    position: relative;
    margin-bottom: 40px;
    padding-bottom: 5px;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: center;
    color: #00192D;
}

.ttlDesign2:after {
    content: '';
    position: absolute;
    bottom: 0;
    display: inline-block;
    width: 60px;
    height: 1px;
    left: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #00192D;
}

.ttlDesign3 {
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 5px;
    font-size: 2.4rem;
    font-weight: bold;
    color: #000;
}

.ttlDesign3 span {
    padding-left: 10px;
    font-size: 1.6rem;
    font-weight: bold;
    font-style: italic;
    color: #87a3af;
}

.ttlDesign3:after {
    content: '';
    position: absolute;
    bottom: 0;
    display: inline-block;
    width: 60px;
    height: 1px;
    left: 30px;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #00192D;
}

.ttlDesign4 {
    margin-bottom: 10px;
    padding-bottom: 5px;
    font-weight: bold;
    border-bottom: 1px solid #00192d;
    color: #00192d;
}

.ttlDesign5 {
    margin-bottom: 30px;
    padding-left: 10px;
    font-size: 2.1rem;
    font-weight: bold;
    color: #00192d;
    border-left: 6px solid #00192d;
    line-height: 1.2;
}

.ttlDesign6 {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 2.1rem;
    color: #00192d;
}

.ttlDesign6:after {
    content: "";
    display: block;
    height: 3px;
    background: -moz-linear-gradient(0% 50% 0deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0, rgba(0, 25, 45, 1)), color-stop(0.2412, rgba(0, 25, 57, 1)), color-stop(0.6631, rgba(0, 25, 73, 1)), color-stop(1, rgba(0, 25, 78, 1)));
    background: -ms-linear-gradient(0deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#00192D', endColorstr='#00194E' ,GradientType=0)";
    background: linear-gradient(90deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00192D', endColorstr='#00194E', GradientType=1);
}

.ttlDesign7 {
    margin-bottom: 20px;
    padding-bottom: 5px;
    font-size: 1.8rem;
    border-bottom: 1px solid #00192d;
    color: #00192d;
}

.ttlDesign8 {
    margin-bottom: 5px;
    font-weight: bold;
}

.ttlDesign9 {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 1.8rem;
    color: #00192d;
}

.ttlDesign10 {
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 2.1rem;
    color: #1F286E;
}

.ttlDesign11 {
    margin-bottom: 5px;
    padding: 5px;
    font-weight: bold;
    font-size: 2.1rem;
    color: #fff;
    background: #fcce05;
}

.dispIb{
    display: inline-block;
}

.ttlDesign_boxgr {
    padding-top: 10px;
    font-size: 1.8rem;
    font-weight: bold;
    border-bottom:2px solid #28a838;
    margin-bottom: 10px;
}


.ttlDesign_boxgr::before{
    content: "■";
    color: #28a838;
}

.ttlDesign_boxgr_sub{
    border : 2px solid #28a838;
    font-weight: bold;
    margin-bottom: 5px;
    padding: 5px;
    display: inline-block;
}

.boxye::before{
    content: "■";
    color: #fcce05;
}
.ttlDesign_boxgr.boxye {
    border-bottom: 2px solid #fcce05;
}


.foye{
    color: #fcce05!important;
}

.boxpi::before{
    content: "■";
    color: #ff34a4;
}

.ttlDesign_boxgr.boxpi {
    border-bottom: 2px solid #ff34a4;
}

.boxDesign1_ttl {
    padding: 10px 20px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #FFF;
    background: #00192d;
}

.bnrlist {
    max-width: 820px;
    margin: 0 auto;
}

.bnrlist img {
    width: 100%;
    max-width: 360px;
    border: 1px solid #EBEBEB;
    border-radius: 4px;
}


/* icon */

.blank {
    background: url(../img/cmn/icn_blnk.svg) right center no-repeat;
    background-size: 14px;
    padding-right: 23px;
}

.pdf {
    background: url(../img/cmn/icn_pdf.svg) right center no-repeat;
    background-size: 18px;
    padding-right: 23px;
}

.more_btn {
    background: url(../img/cmn/icn_arw2.svg) right center no-repeat;
    background-size: 14px;
    padding-right: 23px;
}

.more_btn:hover {
    background: url(../img/cmn/icn_arw2_B.svg) right center no-repeat;
    background-size: 14px;
    padding-right: 23px;
}

.icn_JR {
    padding-left: 25px;
    background: url(../img/cmn/icn_JR.svg) no-repeat left center;
}

.icn_metoro {
    padding-left: 25px;
    background: url(../img/cmn/icn_metoro.svg) no-repeat left center;
}

.icn_shiei {
    padding-left: 25px;
    background: url(../img/cmn/icn_osaka.svg) no-repeat left center;
}

.icn_tel {
    margin-bottom: 10px;
    padding-left: 35px;
    background: url(../img/cmn/icn_tel.svg) no-repeat left center;
}

.icn_tel a {
    color: #00192D;
    font-size: 1.8rem;
    font-weight: bold;
}

.icn_dot {
    position: relative;
    padding-left: 20px;
}

.icn_dot:before {
    position: absolute;
    top: 10px;
    left: 7px;
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 6px;
    border: 1px solid #A0A5B4;
    background: #FFF;
}

.icn_kome {
    position: relative;
    padding-left: 1em;
    font-size: 1.4rem;
}

.icn_kome:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}

.icn_env {
    margin-bottom: 10px;
    padding-left: 35px;
    background: url(../img/cmn/icn_env.svg) no-repeat left center;
}

.icn_environment_r::after {
    content: "";
    margin-bottom: 10px;
    padding-right: 35px;
    background: url(../img/cmn/icn_env.svg) no-repeat right center;
}

.icn_governance_r::after {
    content: "";
    margin-bottom: 10px;
    padding-right: 35px;
    background: url(../img/cmn/icn_gvr.svg) no-repeat right center;
}


.icn_social {
    margin-bottom: 10px;
    padding-left: 35px;
    background: url(../img/cmn/icn_scl.svg) no-repeat left center;
}

.icn_social_r::after {
    content: "";
    margin-bottom: 10px;
    padding-right: 35px;
    background: url(../img/cmn/icn_scl.svg) no-repeat right center;
}

.icn_governance {
    margin-bottom: 10px;
    padding-left: 35px;
    background: url(../img/cmn/icn_gvr.svg) no-repeat left center;
}


/* button */

.form_box {
    text-align: center;
    font-size: 1.8rem;
}

.contact_btn a,
.contact_btn input.button {
    /*	譌ｧ��.contact_btn a {	*/
    display: inline-block;
    margin-top: 20px;
    padding: 15px 100px 15px 80px;
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #FF8B00;
    border-radius: 4px;
    color: #FFF;
    font-weight: bold;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}

.contact_btn a:hover,
.contact_btn input.button:hover {
    /*	譌ｧ��.contact_btn a:hover {	*/
    opacity: 0.7;
}

.blue_btn {
    width: 500px;
    margin: 0 auto;
    color: #FFF;
    font-weight: bold;
    text-align: center;
}

.blue_btn a {
    display: block;
    margin: 0 auto;
    padding: 15px 0;
    color: #FFF;
    font-weight: bold;
    background: #00a7ee;
    background-size: 18px;
    border-radius: 4px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}

.blue_btn a:hover {
    opacity: 0.7;
}

.blue_btn br {
    display: none;
}


/* flexbox */

.flexbox_sbwap {
    /* 謚倥ｊ霑斐＠繝ｻ豌ｴ蟷ｳ譁ｹ蜷醍ｫｯ謠�∴ */
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
}

.flexbox_sb {
    /* 謚倥ｊ霑斐＠縺ｪ縺励�豌ｴ蟷ｳ譁ｹ蜷醍ｫｯ謠�∴ */
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
}

.flexbox_cwap {
    /* 謚倥ｊ霑斐＠繝ｻ豌ｴ蟷ｳ荳ｭ螟ｮ謠�∴ */
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: center;
    /* Safari */
    justify-content: center;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
}

.flexbox_wap {
    /* 謚倥ｊ霑斐＠縺ｮ縺ｿ */
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
}

.flexbox_atc {
    /* 蝙ら峩譁ｹ蜷台ｸｭ螟ｮ謠�∴ */
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
}

.flexbox_baseline {
    /* 蝙ら峩譁ｹ蜷台ｸｭ螟ｮ謠�∴ */
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: baseline;
    /* Safari */
    align-items: baseline;
}


/* list */

.list_dot>li {
    position: relative;
    width: 100%;
    margin-bottom: 10px;
    padding-left: 20px;
}

.list_dot>li:before {
    position: absolute;
    top: 10px;
    left: 7px;
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 6px;
    border: 1px solid #A0A5B4;
    background: #FFF;
}

.list_dot a:hover {
    text-decoration: underline;
}

.list_dot_sec li {
    position: relative;
    padding-left: 20px;
}

.list_dot_sec li:before {
    position: absolute;
    top: 13px;
    left: 7px;
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 3px;
    background: #A0A5B4
}

.list_dec li {
    margin: 0.5em 0;
    list-style-type: decimal;
}

.list_dec>li:last-child {
    margin-bottom: 0;
}

.list_dec.inrbox_p40 {
    padding-left: 60px;
}

ol.kakko>li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt;
    margin-left: 1.5em;
    text-indent: -1.5em;
}

ol.kakko>li:before {
    display: marker;
    content: "(" counter(cnt) ") ";
}

ol.alpha li {
    list-style-type: lower-alpha;
    list-style-position: inside;
    margin-left: 1.5em;
    text-indent: -1em;
}

.list_more li {
    margin-bottom: 5px;
}

.list_more a {
    background: url(../img/cmn/icn_arw2.svg) right center no-repeat;
    background-size: 14px;
    padding-right: 23px;
}

.list_more a:hover {
    text-decoration: underline;
}

.listDesign1 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
}

.listDesign1 li {
    /*3蛻嶺ｸｦ縺ｳ繝ｪ繧ｹ繝�*/
    max-width: 30%;
    margin: 0 5% 30px 0;
}

.listDesign1 li:nth-child(3n) {
    margin-right: 0;
}

.listDesign1 li p {
    margin-bottom: 10px;
}

.listDesign1 li p:last-child {
    margin-bottom: 0;
}

.listDesign2 {
    width: 100%;
}

.listDesign2 li {
    padding: 10px;
    border-bottom: 1px solid #e5e5e5;
}

.lD1_img {
    max-width: 240px;
    margin-bottom: 10px;
}

.lD1_img img {
    width: 100%;
    height: auto;
    border: 1px solid #e5e5e5;
}

.dl_list dt {
    float: left;
    margin-bottom: 5px;
    font-weight: bold;
}

.dl_list dd {
    margin: 0 0 5px 4em;
}

.dl_list dd:before {
    content: ":";
    display: inline-block;
    text-indent: -1em;
}

.faq_list dt,
.faq_list dd {
    position: relative;
    padding-left: 1.5em;
    margin-bottom: 20px;
}

.faq_list dt:before,
.faq_list dd:before {
    position: absolute;
    left: 0;
    content: 'Q.';
    color: #87A3AF;
}

.faq_list dt {
    font-size: 1.8rem;
    font-weight: bold;
}

.faq_list dd {
    padding-bottom: 20px;
    border-bottom: 1px solid #EBEBEB;
}

.faq_list dt:before {
    content: 'Q.';
}

.faq_list dd:before {
    content: 'A.';
}

.faq_list dd p {
    margin-bottom: 1em;
}

.faq_list dd>p:last-child,
.faq_list>dd:last-child {
    margin-bottom: 0;
}

.topics_list .pdf,
.list_news .pdf,
.list_content .pdf {
    background: url(../img/cmn/icn_pdf.svg) left center no-repeat;
    background-size: 18px;
    padding-left: 23px;
    padding-right: 0;
}

.list_content dl a:hover {
    text-decoration: underline;
}

.list_content dl {
    border-bottom: solid 1px #e5e5e5;
    padding: 10px 0;
}

.list_content dl:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.list_content dt {
    position: relative;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 1.4rem;
    color: #6e6e7d;
}

.list_content dt.new:after {
    background: #edb800;
    color: white;
    content: "NEW";
    padding: 0 1em;
    margin-left: 20px;
    font-weight: normal;
    font-size: 1.2rem;
}

.list_content dt span {
    margin-left: 1em;
    font-weight: bold;
}

.list_content dt span:before {
    content: " ｜ ";
    padding-right: 10px;
}

.list_content dd .size {
    font-size: 1.4rem;
    color: #6e6e7d;
}

.list_content .more_btn {
    margin-top: 10px;
}


/*content Sub-navigation(top)*/

.sub_nav {
    font-size: 0;
}

.sub_nav li a {
    display: block;
    padding: 10px 0;
    font-size: 1.8rem;
    font-weight: bold;
    color: #333;
    text-align: center;
    border-left: 1px solid #FFF;
    background: url(../img/cmn/icn_arw_btm.svg) no-repeat 95% center #F1F1F2;
}

.sub_nav li a:hover {
    color: #1ba3f9;
    background: url(../img/cmn/icn_arw_btm_B.svg) no-repeat 95% center #fbfbfb;
}

.snav_2-3line li {
    width: 30%;
}

.snav_4line li {
    width: 25%;
}

.snav_5line li {
    width: 20%;
}

.snav_6line li {
    width: 16.5%;
}

.snav_6line li a {
    font-size: 1.6rem;
    background: url(../img/cmn/icn_arw_btm.svg) no-repeat 95% center #F1F1F2;
    background-size: 13px;
}

.snav_6line li a:hover {
    background-size: 13px;
}


/*table*/

.tableDesign1 {
    width: 100%;
    margin-bottom: 30px;
}

section .tableDesign1:last-child,
section .tableDesign2:last-child {
    margin-bottom: 0;
}

.tableDesign1.tableB {
    border-top: 1px solid #00192d;
    border-bottom: 1px solid #00192d;
}

.tableDesign1.tableP {
    border-top: 1px solid #dc294e;
    border-bottom: 1px solid #dc294e;
}

.tableDesign1 tr {
    border-bottom: 1px solid #ebebeb;
}

.tableDesign1 tr:last-child {
    border-bottom: none;
}

.tableDesign1 th {
    padding: 10px;
    font-weight: bold;
    color: #000000;
    text-align: left;
}

.tableDesign1 td {
    padding: 10px;
    text-align: left;
}

.tableDesign2 {
    width: 100%;
    border-top: 1px solid #00192d;
    border-bottom: 1px solid #00192d;
}

.tableDesign2 th,
.tableDesign2 td {
    padding: 10px 20px;
    text-align: left;
}

.tableDesign2 tr {
    border-bottom: 1px solid #ebebeb;
}

.tableDesign2 tr:last-child {
    border-bottom: none;
}

.tableDesign2 th {
    width: 10em;
    font-weight: bold;
    background: #879299;
}

.ir .tableDesign2 th {
    width: 14em;
    font-weight: bold;
    background: #879299;
}

.tableDesign3 {
    width: 100%;
    border-top: 1px solid #00192d;
    border-bottom: 1px solid #00192d;
}

.tableDesign3 th,
.tableDesign3 td {
    padding: 10px 20px;
    text-align: center;
    border-right: 1px solid #e5e5e5;
}

.tableDesign3.mid td {
    vertical-align: middle;
}

.tableDesign3 th:last-child,
.tableDesign3 td:last-child {
    border-right: 0;
}

.tableDesign3 tr {
    border-bottom: 1px solid #ebebeb;
}

.tableDesign3 tr:last-child {
    border-bottom: none;
}

.tableDesign3 th {
    font-weight: bold;
    background: #f2f2f2;
}

.tableDesign3.tableC {
    width: 580px;
}

.tableDesign4 {
    width: 100%;
    border: 1px solid #00192d;
}

.tableDesign4 th,
.tableDesign4 td {
    padding: 10px 20px;
    text-align: center;
    border-right: 1px solid #e5e5e5;
    vertical-align: middle;
}

.tableDesign4.tL th,
.tableDesign4.tL td {
    text-align: left;
}

.tableDesign4 tr {
    border-bottom: 1px solid #ebebeb;
}

.tableDesign4 tr:last-child,
.tableDesign4 th:last-child,
.tableDesign4 td:last-child {
    border: none;
}

.tableDesign4 td:first-child {
    border-right: 1px solid #e5e5e5;
}

.tableDesign4 th {
    font-weight: bold;
    background: #f2f2f2;
}

.tableDesign3.tL td,
.tableDesign3.tL th {
    text-align: left;
    padding-left: 2em;
    vertical-align: middle;
}

.ichiran th {
    width: 25%;
}

.ichiran td {
    text-align: left;
}

.bbB {
    border-bottom: 1px solid #00192d!important;
}

.bbP {
    border-bottom: 1px solid #dc294e;
}


/*auto_filesize*/

.size_part {
    padding: 0 5px;
}

a .size_part {
    font-size: 1.4rem;
    color: #6e6e7d;
}

.size_part:before {
    content: "（PDF ";
}

.size_part:after {
    content: "）";
}


/* 6: other
================================== */


/* === top-page === */

#mainimg {
    /* height:200vh; */
    min-height: 550px;
    overflow: hidden;
    /*background: url(../img/top/mainimg.jpg) no-repeat bottom right;*/
    /* background-size: cover; */
}

@media all and (-ms-high-contrast: none) {
  /*  IE */
#mainimg {
position: relative;
z-index: 0;
}
}

.mainimg_inr {
    
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 10px;
    color: #FFF;
    top: 0;
    text-align: center;
    height: 100vh;
    display: block;
    /* justify-content: center;
    align-items: center;    
    flex-flow: column; */
    overflow: hidden;
}

.mvbox1,.mvbox2{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 10px;
    color: #FFF;
    top: 0;
    text-align: center;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;    
    flex-flow: column;

}


#main_v_video {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        min-width: 100vw;
        min-height: 100vh;
        width: auto;
        height: auto;
        z-index: -1;
    }

/* videoJSのCSS */
    .video-js .vjs-tech {
        position: absolute;
        top: 50%!important;
        left: 50%!important;
        transform: translateX(-50%) translateY(-50%);
        min-width: 100%!important;
        min-height: 100%!important;
        width: auto!important;
        height: auto!important;
    }


    .main_txtcontainer{
        display:flex;height: 100vh;width: 100vw;justify-content: center;align-items: center;
    }
    .main_txtcontainer img{
        width: 500px;
        height: auto;
    }

.index section.mainimg_cover{
    background-image   : radial-gradient(rgba(255, 255, 255, 0.49) 11%, transparent 13%),
                         radial-gradient(rgba(255, 255, 255, 0.49) 11%, transparent 13%);
    background-position: 0 0, 4px 4px;
    background-size    : 8px 8px;
        background-color: #0000;
}


#mainimg h2 {
    font-size: 4.8rem;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.8);
}

#mainimg p {
    font-size: 1.8rem;
}

.important_notice {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 30px 10px;
    text-align: center;
}

.index .important_notice {
    background: #fff;
}


.index section.ffBk{
    background: #fff;
    position: relative;
    z-index: 1;
}

.topics_box {
    width: 100%;
    min-width: 1020px;
    background: #F1F1F2;
    position: relative;
    z-index: 1;
}

.topics_inr {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 30px 10px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;

}

.topics_ttl {
    display: inline-block;
    font-size: 3.2rem;
    color: #124291;
}

.topics {
    min-width: 820px;
    height: 130px;
    overflow-y: auto;
    padding-left: 40px;
    border-left: 2px solid #124291;
}

.topics::-webkit-scrollbar {
    background: #ccc;
    width: 10px;
}

.topics::-webkit-scrollbar-thumb {
    background: #aaa;
}

.topics_list a:hover {
    text-decoration: underline;
}

.topics_list dt {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
    font-size: 1.4rem;
    color: #6e6e7d;
    font-weight: bold;
}

.topics_list dt .news_tag,
.list_news dl dt .news_tag {
    margin-left: 0.5em;
    color: #6e6e7d;
    font-weight: bold;
}

.topics_list dt .news_tag:before,
.list_news dl dt .news_tag:before {
    content: " ｜ ";
    padding-right: 5px;
}

.topics_list dd {
    margin-bottom: 10px;
    padding: 5px 0 10px;
    font-size: 1.6rem;
}

.topics_list dd:last-child {
    border-bottom: none;
}

.morenews {
    text-align: right;
}

.morenews a {
    display: inline-block;
    margin-right: 20px;
    padding: 2px 40px 2px 30px;
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #124291;
    color: #FFF;
}

.morenews a:hover {
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #2362c9;
}

.tag {
    display: inline-block;
    margin: 0 1em;
    padding: 0 15px;
    font-size: 1.2rem;
    text-align: center;
    color: #FFF;
}

.icn_news {
    background: #1B65DD;
}

.icn_new,
.icn_R15 {
    background: #EDB800;
}

.icn_bfree {
    background: #5cb76b;
    max-width: 10em;
}

.icn_bfree a {
    color: #FFF;
    text-decoration: underline;
}

.icn_bfree a {
    color: #FFF;
    text-decoration: underline;
}

.layoutWrap_top {
    position: relative;
}

.index section.layoutWrap_top{
   background:#fff;
}

.hight_sv {
    min-height: 550px;
}

.hight_ir {
    min-height: 770px;
}

.hight_news {
    min-height: 580px;
}

.hight_rec {
    min-height: 520px;
}

.upperBg {
    height: 280px;
    overflow: hidden;
}

.topBg01 {
    background: url(../img/top/topBg01.jpg) no-repeat center;
    background-attachment: fixed;
    background-size: cover;
}

.topBg02 {
    background: url(../img/top/topBg02.jpg) no-repeat center;
    background-attachment: fixed;
    background-size: cover;
}

.topBg03 {
    background: url(../img/top/topBg03.jpg) no-repeat center;
    background-attachment: fixed;
    background-size: cover;
}

.topBg04 {
    background: url(../img/top/topBg04.jpg) no-repeat center;
    background-attachment: fixed;
    background-size: cover;
}

.top_ttl {
    margin: 30px auto;
    font-size: 3.2rem;
    font-weight: bold;
    color: #FFF;
    text-align: center;
}

.top_ttl span {
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
}

.clmDesign_top {
    position: absolute;
    top: 150px;
    left: 0;
    right: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
    width: 100%;
    max-width: 1220px;
    margin: 0 auto;
    padding: 30px 50px 70px;
    background: #FFF;
}

.clmDesign_top li {
    width: 25%;
    padding: 0 20px;
}

.list_news {
    padding-top: 60px;
}

.clmDesign_top.list_news li {
    width: 33%;
    margin-bottom: 30px;
    padding: 0 10px;
}

.clmDesign_top.list_ir li {
    margin-bottom: 30px;
}

.clmDesign_top.list_rec li {
    width: 50%;
    margin-bottom: 30px;
    padding: 0 30px;
}

.clmDesign_top li img {
    width: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover; object-position: center;';
}

.list_sv li img {
    height: 245px;
}

.list_ir li img {
    height: 173px;
}

.list_rec li img {
    height: 182px;
}

.clmDesign_top h3 {
    margin-bottom: 20px;
    font-size: 2.1rem;
    font-weight: bold;
    color: #303030;
    text-align: center;
    -webkit-transition: all .2s;
    transition: all .2s;
}

.clmDesign_top h3:hover {
    color: #0A75B8;
}

.figure_box {
    position: relative;
    overflow: hidden;
    max-width: 245px;
    z-index: 3;
}

.figcaption_box {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 222;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 30px;
    background: rgba(0, 0, 0, .7);
    -webkit-transform: rotateX(-180deg);
    transform: rotateX(-180deg);
    -webkit-transition: .6s;
    transition: .6s;
    opacity: 0;
}

.figure_box:hover .figcaption_box {
    -webkit-transform: rotateX(0);
    transform: rotateX(0);
    opacity: 1;
}

.figcaption_box p {
    color: #FFF;
}

.list_news dl {
    min-height: 130px;
    padding: 20px;
    border: 1px solid #EBEBEB;
}

.list_news dl a:hover {
    color: #1ba3f9;
    text-decoration: underline;
}

.list_news dl dt {
    margin-bottom: 10px;
    font-size: 1.4rem;
    color: #6e6e7d;
    font-weight: bold;
}

.more a {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
    -webkit-justify-content: center;
    /* Safari */
    justify-content: center;
    height: 130px;
    background: #EBEBEB;
    color: #323232;
}

.more a:hover {
    background: #f5f5f5;
    color: #0a75b8;
}

.more a span {
    padding-right: 20px;
    background: url(../img/cmn/icn_arwG.svg) no-repeat right center;
}

.more a:hover span {
    padding-right: 20px;
    background: url(../img/cmn/icn_arwB.svg) no-repeat right center;
}


/* === service.html === */

.service .sec_mainimg {
    background: url(../img/service/secimg_service.jpg) no-repeat center;
    background-size: cover;
}

.sv_msgttl {
    font-size: 2.1rem;
}

.sv_message {
    max-width: 900px;
    margin: 0 auto;
}

.sv_list>li {
    width: 48%;
    margin-bottom: 40px;
    padding: 30px;
    background: #FFF;
}

.sv_list .list_dot>li {
    width: 48%;
}

.sv_list_top {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #EBEBEB;
}

.sv_img {
    float: left;
}

.sv_img img {
    width: 100%;
    max-width: 192px;
}

.sv_txt {
    margin-left: 212px;
}

.sv_txt p:last-child {
    margin-top: 10px;
}

.sv_list2>li {
    width: 33%;
    max-width: 340px;
    min-height: 340px;
    margin-bottom: 40px;
    padding: 30px;
    background: #FFF;
}

.sv_list2>li.long {
    width: 66%;
    max-width: 720px;
}

.long .list_dot>li {
    width: 33%;
}

.sv_icn {
    margin-bottom: 30px;
}


/* === folder:movies === */

.movies .sec_mainimg {
    background: url(../img/movies/secimg_movies.jpg) no-repeat center;
    background-size: cover;
}

.movies .boxDesign1 {
    margin-bottom: 40px;
}

.movies .boxDesign1:last-child {
    margin-bottom: 0;
}

.movies_news {
    border: 10px solid #f6e5e9;
    background: #f6e5e9;
}

.movies_news_box {
    padding: 30px;
}

.movies_news_box p {
    margin-bottom: 0.5em;
}

.movies_news_box p:last-child {
    margin-bottom: 0;
}

.movies_news_ttl {
    padding: 10px 20px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #FFF;
    background: #dc294e;
}

.movies_news_ttl02 {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
}

.movies_news_ttl02 a:hover {
    text-decoration: underline;
}

.movies_news_img {
    float: left;
    background: #f6e5e9;
}

.movies_news_img img {
    width: 140px;
    height: 200px;
    object-fit: contain;
    font-family: 'object-fit: contain;';
}

.movies_news_txt {
    margin-left: 180px;
}

.movie_ttl {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
}

.movie_ttl span {
    font-size: 1.6rem;
    font-weight: normal;
    text-align: right;
}

.movie_ttl span.fB {
    font-weight: bold;
    font-size: 1.8rem;
}

.movie_txt {
    margin: 0 0 30px 225px;
}

.news_inr_txt {
    margin-left: 260px;
}

.news_inr_img {
    float: left;
    max-width: 240px;
    height: auto;
}

.news_inr_img img {
    width: 100%;
    height: auto;
}

.movie_date {
    margin-bottom: 20px;
    font-weight: bold;
}

.Multi_date {
    font-weight: bold;
    padding-right: 1em;
}

.movie_img {
    float: left;
}

.movie_img img {
    width: 100%;
    max-width: 185px;
}

.movie_txt .movie_outline {
    margin-bottom: 20px;
}

.movie_outline dt {
    float: left;
    margin-bottom: 5px;
    padding-right: 50px;
    font-weight: bold;
}

.movie_outline dd {
    margin: 0 0 5px 130px;
}

.movie_outline dd:before {
    content: ":";
    display: inline-block;
    text-indent: -1em;
}

.movie_details {
    position: relative;
    padding: 30px 40px;
    border: 1px solid #00192d;
    background: #FFF;
}

.readmore {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px;
    text-align: right;
    cursor: pointer;
    transition: .2s ease;
    z-index: 999;
    font-weight: bold;
    color: #0a75b8;
}

.readmore::before {
    content: "続きを読む";
}

.readmore:hover {
    color: #1ba3f9;
}

.readmore span {
    padding-right: 30px;
    background: url(../img/cmn/icn_arw_btm2.svg) no-repeat right center;
}

.readmore:hover span {
    padding-right: 30px;
    background: url(../img/cmn/icn_arw_btm_B.svg) no-repeat right center;
}

.details_txt {
    position: relative;
    overflow: hidden;
}

.details_txt.is-hide {
    height: 120px;
}

.details_txt::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 50px;
    background: -moz-linear-gradient(50% 100% 90deg, rgba(255, 255, 255, 1) 32.96%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 1) 32.96%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, 50% 100%, 50% 0%, color-stop(0.3296, rgba(255, 255, 255, 1)), color-stop(1, rgba(255, 255, 255, 0)));
    background: -ms-linear-gradient(90deg, rgba(255, 255, 255, 1) 32.96%, rgba(255, 255, 255, 0) 100%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFF', endColorstr='#FFFFFF' ,GradientType=0)";
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 32.96%, rgba(255, 255, 255, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFF', endColorstr='#FFFFFF', GradientType=0);
}

.movie_details p {
    margin-bottom: 0.5em;
}

.readmore.is-show {
    bottom: -1em;
}

.readmore.is-show::before {
    content: "閉じる";
}

.readmore.is-show span {
    padding-right: 30px;
    background: url(../img/cmn/icn_arw_top.svg) no-repeat right center;
}

.readmore.is-show:hover span {
    padding-right: 30px;
    background: url(../img/cmn/icn_arw_top_B.svg) no-repeat right center;
}

.readmore.is-show+.details_txt::before {
    display: none;
}

.timetable {
    margin-bottom: 30px;
    padding: 10px 30px 20px;
    background: #f1f1f2;
}

.timetable.aisatsu_table {
    margin-bottom: 5px;
}

.timetable li {
    width: 25%;
    text-align: center;
    border-right: 1px solid #3f3f3f;
}

.timetable.line1 li {
    width: 100%;
}

.timetable.line2 li {
    width: 50%;
}

.timetable.line3 li {
    width: 33%;
}

.timetable.line4 li {
    width: 25%;
}

.timetable.line5 li {
    width: 20%;
}

.timetable li p {
    font-size: 1.4rem;
}

.timetable li p:first-child {
    font-size: 1.8rem;
    font-weight: bold;
}

.timetable li:last-child {
    border-right: none;
}

#aisatsu {
    margin-bottom: 40px;
}

.aisatsu_txt {
    margin-bottom: 30px;
}

.coming_list li {
    margin-bottom: 40px;
    padding: 30px 50px;
    background: #f1f1f2;
}

.coming_list li:last-child {
    margin-bottom: 0;
}

.movie_date2 {
    display: inline-block;
    margin-bottom: 20px;
    padding: 5px 20px;
    background: #FFF;
}

.movie_img2 {
    float: left;
    margin-bottom: 20px;
}

.movie_img2 img {
    width: 100%;
    max-width: 140px;
}

.movie_txt2 {
    margin: 0 0 30px 180px;
}

.flexbox_sbwap .movie_outline {
    width: 50%;
}

.flexbox_sbwap .movie_outline.cast {
    width: 100%;
    margin-bottom: 20px;
}

.movies_link_btm {
    margin: 20px auto;
    text-align: center;
}

.movies_link {
    text-align: left;
}

.movies_link_btm a,
.movies_link a {
    display: inline-block;
    padding: 3px 30px 3px 20px;
    color: #FFF;
    font-size: 1.4rem;
    background: url(../img/cmn/icn_blnk_W.svg) #0a75b8 no-repeat 95% center;
}

.movies_link_btm a:hover,
.movies_link a:hover {
    background: url(../img/cmn/icn_blnk_W.svg) #1ba3f9 no-repeat 95% center;
}

.table_movies th {
    width: 40%;
}

.table_movies td {
    width: 30%;
}

.table_movies td.price {
    text-align: right;
}

.movies_pricettl {
    display: inline-block;
    margin-bottom: 20px;
    padding: 5px 20px;
    font-weight: bold;
    color: #FFF;
}

.movies .gmap {
    float: right;
    border: none;
}

.access_subaruza {
    margin: 20px 0;
}

#main section.about_subaruza {
    padding-bottom: 0;
}

.about_subaruza .ttlDesign3 {
    max-width: 1120px;
    min-width: 1020px;
    margin: 0 auto 20px;
}

.bg_subaruza {
    background: url(../img/movies/bg_about.jpg) no-repeat center;
    background-size: cover;
}

.bg_subaruza ul {
    max-width: 1120px;
    min-width: 1020px;
    margin: 0 auto;
    padding: 80px 10px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: center;
    /* Safari */
    justify-content: center;
}

.bg_subaruza>ul>li {
    width: 50%;
}

.about_subaruza_txt {
    padding-right: 50px;
    color: #000;
}

.about_subaruza_outline {
    padding-left: 50px;
    color: #FFF;
}

.about_subaruza h3 {
    margin-bottom: 20px;
    font-size: 2.1rem;
    font-weight: bold;
}

.about_subaruza p {
    text-indent: 1em;
}

.about_subaruza_outline table {
    width: 100%;
}

.about_subaruza_outline table tr {
    border-bottom: 1px solid #FFF;
}

.about_subaruza_outline table tr:last-child {
    border-bottom: none;
}

.about_subaruza_outline table th,
.about_subaruza_outline table td {
    padding: 10px 0;
}

.about_subaruza_outline table th {
    width: 40%;
    font-weight: bold;
}

.about_subaruza_outline .tel {
    color: #FFF;
}

.movies_tablebox {
    margin-top: 20px;
}

.movies_tablebox h4 {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 1.8rem;
    color: #00192d;
}

.movies_tablebox td {
    text-align: left;
}


/* === folder:leisure === */

.gaisyoku .third_mainimg {
    background: url(../img/leisure/secimg_gaisyoku.jpg) no-repeat center;
    background-size: cover;
}

.gaisyoku .sec_mainimg {
    position: relative;
    padding-top: 0;
}


/* leisure slider */

#loopSlide {
    position: relative;
}

#loopSlide+.main_img_inr {
    position: absolute;
    top: 140px;
    left: 0;
    right: 0
}

.simply-scroll-container {
    position: relative;
}

.simply-scroll-clip {
    position: relative;
    overflow: hidden;
}

.simply-scroll-list {
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.simply-scroll-list li {
    float: left;
    /* Horizontal scroll only */
    padding-top: 0px;
    margin: 0;
    width: 700px;
    height: 300px;
}

.simply-scroll-list li img {
    display: block;
}

.sv_gaisyoku>li {
    margin: 0 40px 40px;
}

.tag_mond {
    display: inline-block;
    padding: 2px 10px 2px 25px;
    font-size: 1rem;
    color: #FFF;
    background: url(../img/leisure/icn_mond.svg) no-repeat 10px center #F7A123;
}

.restaurant_box {
    width: 100%;
    padding: 10px;
    border: 5px solid #f1f1f2;
}

#main section.restaurant_singlebox {
    padding-bottom: 10px;
    margin-bottom: 100px;
}

.list_hd {
    width: 100%;
    height: 120px;
    margin-bottom: 30px;
    padding: 0 30px;
    line-height: 120px;
    font-size: 2.8rem;
    border: 1px solid #e5e5e5;
    color: #00192d;
}

.list_hd>span {
    padding: 20px;
    font-weight: bold;
    background: rgba(255, 255, 255, 0.8);
}

.list_hd span span {
    padding-left: 1em;
    font-size: 2.1rem;
    font-weight: bold;
    color: #00192d;
}

#cafe.list_hd {
    background: url(../img/leisure/cafe_hdimg.jpg) no-repeat center;
    background-size: cover;
}

#italian.list_hd {
    background: url(../img/leisure/italian_hdimg.jpg) no-repeat center;
    background-size: cover;
}

#sicily.list_hd {
    height: 100px;
    line-height: 100px;
    background: url(../img/leisure/sicily_hdimg.jpg) no-repeat center;
    background-size: cover;
    font-size: 2.1rem;
}

#japanese.list_hd {
    height: 100px;
    line-height: 100px;
    background: url(../img/leisure/takemura_hdimg.jpg) no-repeat center;
    background-size: cover;
}

.carousel_bg {
    position: relative;
    float: right;
    padding: 20px 20px 10px;
    background: #fafafa;
}

#carousel,
#carousel2 {
    width: 460px;
    height: 220px;
    position: relative;
    clear: both;
    overflow: hidden;
}

#carousel li img,
#carousel2 li img {
    position: relative;
    width: 220px;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}

img.carousel-center {
    position: relative;
}

.shop_name {
    display: none;
}

img.carousel-center+.shop_name {
    display: block;
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    width: 240px;
    margin: auto;
    z-index: 11;
    color: #FFF;
    font-weight: bold;
    text-align: center;
}

img.carousel-center:hover {
    opacity: 0.8!important;
}

#callback-output {
    height: 150px;
    overflow: scroll;
}

textarea#newoptions {
    width: 150px;
}

.list_shop {
    float: left;
    width: 28%;
}

.carousel-center+.shop_name {
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    width: 240px;
    margin: auto;
    z-index: 999;
    color: #FFF;
    font-weight: bold;
    font-size: 1.8rem;
    text-align: center;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.8);
}

#prev,
#prev2 {
    font-size: 1.4rem;
    padding-left: 15px;
    background: url(../img/cmn/icn_arwBL.svg) no-repeat left center;
    background-size: 8px;
}

#prev:hover,
#prev2:hover {
    background: url(../img/cmn/icn_arwB_hoverL.svg) no-repeat left center;
    background-size: 8px;
}

#next,
#next2 {
    font-size: 1.4rem;
    padding-right: 15px;
    background: url(../img/cmn/icn_arwB.svg) no-repeat right center;
    background-size: 8px;
}

#next:hover,
#next2:hover {
    background: url(../img/cmn/icn_arwB_hover.svg) no-repeat right center;
    background-size: 8px;
}

.box_half {
    margin-bottom: 100px;
}

#main .box_half section {
    width: 48%;
    padding-bottom: 20px;
}

.single_img {
    margin-bottom: 20px;
    padding: 20px;
    background: #fafafa;
}

.single_img_long {
    float: right;
    width: 520px;
    padding: 20px 30px;
    background: #fafafa;
}

.single_img img,
.single_img_long img {
    width: 100%;
    max-width: 180px;
    height: auto;
    margin: 0 auto;
    border-radius: 4px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}

.single_img_long img {
    max-width: 220px;
    margin: 0 auto;
}

.menu_list>li {
    width: 100%;
    max-width: 340px;
    min-height: 340px;
    margin: 0 40px 40px;
    padding: 30px;
    background: #ebebec;
}

.menu_list img {
    width: 100%;
    max-width: 200px;
    max-height: 200px;
}

.menu_list dl {
    padding-top: 20px;
    text-align: center;
}

.menu_list dl .tL {
    text-align: left;
}

.menu_list dt {
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
}

.clm2 .menu_list>li {
    width: 48%;
    margin: 0 0 40px;
}

.clm2 .menu_list dd {
    text-align: left;
}

.menu_list>li.attention,
.attention {
    background: white;
    border: solid 10px #e5e5e5;
    font-weight: bold;
    font-size: 2.1rem;
    text-align: center;
    padding: 20px;
}

.menu_list>li.attention .list_dot,
.attention .list_dot li {
    margin-top: 1em;
    text-align: left;
    color: red;
    font-size: 1.6rem;
    font-weight: bold;
}

.menu_list2 {
    width: 100%;
    padding: 5px 10px;
    border-top: 1px solid #00192d;
    border-bottom: 1px solid #00192d;
}

.menu_list2 dl {
    width: 48%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    padding: 10px 0;
    border-top: 1px solid #e5e5e5;
}

.menu_list2 dl:nth-child(1),
.menu_list2 dl:nth-child(2) {
    border-top: none;
}

.menu_list2 dt {
    font-weight: bold;
}

.gaisyoku .gmap {
    float: right;
    border: none;
}

#slider-pro {
    margin-bottom: 30px;
}

#slider-pro .sp-arrow {
    height: 40px;
}

#slider-pro .sp-buttons {
    position: absolute;
    bottom: 20px;
    right: 20px;
    width: 100%;
    height: 30px;
    text-align: right;
}

#slider-pro .sp-button {
    width: 40px;
    height: 6px;
    border-radius: 0;
    margin: 5px;
    background: rgba(255, 255, 255, 0.8);
    border: none;
}

#slider-pro .sp-selected-button {
    background: rgba(10, 117, 184, 0.7);
}

.shop_link {
    margin: 20px 0;
}

.shop_link ul {
    font-size: 0;
}

.shop_link p {
    margin-bottom: 10px;
}

.shop_link li {
    display: inline-block;
    margin-right: 1em;
    vertical-align: top;
    font-size: 1.6rem;
}

.shop_link img {
    width: 79px;
    height: auto;
}

.shop_link .movies_link {
    text-align: left;
    margin-left: 0;
}

.bg_sell,
.bg_sell2 {
    width: 100%;
    margin-bottom: 30px;
    border: 1px solid #e5e5e5;
}

.bg_sell {
    background: url(../img/leisure/sell_main.jpg) no-repeat center;
    background-size: cover;
}

.bg_sell2 {
    background: url(../img/leisure/sell2_main.jpg) no-repeat center;
    background-size: cover;
}

.bg_sell .txt,
.bg_sell2 .txt {
    margin-left: 55%;
    padding: 40px 0 40px 40px;
    color: #FFF;
}

.bg_sell .txt p,
.bg_sell2 .txt p {
    margin-bottom: 5px;
}

.marker_yellow {
    display: inline-block;
    background: linear-gradient(transparent 60%, #ffff66 60%);
}

.img_list_3line li {
    width: 33%;
    padding: 0 20px;
}

.img_list_3line img {
    width: 100%;
    height: auto;
}


/* === folder:douro === */

.douro .sec_mainimg,
.douro .third_mainimg {
    background: url(../img/douro/secimg_douro.jpg) no-repeat center;
    background-size: cover;
}

.douro_list .long li {
    font-size: 1.3rem;
}

.douro_list .tC {
    margin-top: 50px;
}

.kouji_txt {
    width: 420px;
}

.kouji_img {
    width: 100%;
    max-width: 340px;
    margin: 30px 0 0 20px;
}

.kouji_img>li:first-child {
    margin-bottom: 10px;
}

.kouji_img img {
    width: 100%;
    border: 1px solid #e5e5e5;
}

.kouji_img .flexbox_sbwap li {
    width: 33%;
    max-width: 108px;
}

.results_list {
    font-size: 0;
}

.results_list li {
    width: 22.7%;
    margin: 0 3% 20px 0;
    font-size: 1.6rem;
}

.results_list li:nth-child(4n) {
    margin-right: 0;
}

.results_list img {
    width: 100%;
    height: auto;
    margin-bottom: 5px;
}

.results_list .caption {
    max-width: 170px;
}

.connection .tableDesign1 th {
    width: 20em;
}

.douro_map {
    max-width: 680px;
    margin: 0 auto;
}

.bnr_dokkun img {
    width: 400px;
    height: auto;
    display: inline-block;
    border-radius: 4px;
    border: 1px solid #e5e5e5;
}

.pro_img {
    margin-bottom: 40px;
}

.pro_img img {
    width: 100%;
    border: 1px solid #e5e5e5;
}

.return {
    margin-top: 40px;
    text-align: center;
}

.print a {
    float: right;
    background: url(../img/cmn/icn_print.svg) no-repeat 10px center #00192d;
}

.return a {
    background: url(../img/cmn/icn_return.svg) no-repeat 10px center #00192d;
}

.print a,
.return a {
    padding: 3px 10px 3px 30px;
    color: white;
    font-size: 1.5rem;
    border-radius: 4px;
}

.print a:hover,
.return a:hover {
    opacity: 0.7;
}

.flow dt {
    width: 12em;
    float: left;
    font-weight: bold;
}

.flow dd {
    padding-left: 13em;
    position: relative;
}

.flow dd:before {
    content: "：";
}

.ex {
    overflow: hidden;
    position: relative;
    padding-bottom: 70px;
}

.ex img {
    float: left;
    margin-right: 20px;
}

.ex .list_dot {
    overflow: hidden;
}

.ex::after {
    position: absolute;
    bottom: 20px;
    left: 8%;
    content: '';
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #12428b;
    z-index: 999;
}

.ex.last {
    padding-bottom: 30px;
}

.ex.last::after {
    position: absolute;
    bottom: 0;
    content: '';
    border: 0;
}

.ex .ex2 img {
    float: none;
    margin-right: 0;
}

.ex2.arrow {
    margin-bottom: 30px;
}

.ex2 li {
    text-align: center;
}

.ex .flexbox_sbwap.ex2 {
    margin-bottom: 0;
}

.flexbox_sbwap.ex2 {
    margin-bottom: 20px;
}

.ex2 li img {
    margin-bottom: 0.5em;
}

.ex2 .fS {
    text-align: left;
    line-height: 1.2;
}

.arrow li {
    position: relative;
}

.arrow li:nth-child(n+2)::before {
    content: '';
    position: absolute;
    height: 0;
    border-left: 30px solid #12428b;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    top: 25%;
    left: -20%;
}

.arrow li:last-child::after {
    content: '';
    border: 0;
}

.img_s {
    width: 240px;
    height: 160px;
    object-fit: cover;
    font-family: 'object-fit: cover; object-position: center;';
}

.two_photo li:nth-child(n+2) {
    margin-left: 70px;
}

.three_photo li:nth-child(n+2) {
    margin-left: 70px;
}

.three_photo2 li:nth-child(n+2) {
    margin-left: 40px;
}

.three_photo li {
    width: 250px;
}

.three_photo2{
    justify-content: center;
}

.three_photo2 li {
    max-width: 33%;
    position: relative;
}

.arrow2 li:nth-child(n+2)::before {
    content: '';
    position: absolute;
    height: 0;
    border-left: 20px solid #12428b;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    top: 25%;
    left: -30px;
}

.four_photo li {
    width: 210px;
}

.mL li:nth-child(n+2) {
    margin-left: 1em;
}

.pro_flex>div:nth-child(2) {
    margin-left: 20px;
}

.pdf_list li {
    width: 50%;
    padding: 0 40px;
}

.pdf_list h6 {
    margin-bottom: 5px;
    font-size: 1.8rem;
    font-weight: bold;
}

.pdf_list img {
    width: 100%;
    margin-bottom: 20px;
    border: 1px solid #e5e5e5;
}


/* === folder:building === */

.building .sec_mainimg {
    background: url(../img/building/secimg_building.jpg) no-repeat center;
    background-size: cover;
}

.building_img {
    margin-bottom: 30px;
}

.building_img img {
    width: 100%;
}

.building_map {
    padding: 10px;
}


/* === folder:company === */

.company .sec_mainimg,
.company .third_mainimg {
    background: url(../img/company/secimg_company.jpg) no-repeat center;
    background-size: cover;
}

.company .tableDesign1 p {
    margin-bottom: 1em;
}

.company .tableDesign1 p:last-child {
    margin-bottom: 0;
}

.company .tableDesign1 th {
    width: 9em;
    white-space: nowrap;
    vertical-align: top;
}

.company .list_dot.flexbox_wap>li {
    width: 25%;
}

.company .list_dot.flexbox_wap>li:first-child,
.company .list_dot.flexbox_wap>li:nth-child(3n+1) {
    width: 50%;
}

.company td ul.flexbox_wap {
    max-width: 600px;
}


/* === folder:ir === */

.ir .sec_mainimg,
.ir .third_mainimg {
    background: url(../img/ir/secimg_ir.jpg) no-repeat center;
    background-size: cover;
}

.none {
    width: 100%;
    margin-bottom: 40px;
    padding: 50px;
    background: #f2f2f2;
}

.none p {
    font-weight: bold;
}

.koukoku_txt {
    margin-bottom: 30px;
}

.koukoku .list_content {
    margin-bottom: 50px;
}

.ir .sidebar_list {
    margin-bottom: 20px;
}

.tabs {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 40px;
}

#tab1+.tab_item {
    border-left: 1px solid #e5e5e5;
}

input#tab3:checked+.tab_item {
    border-right: 1px solid #e5e5e5;
}

.tab_item {
    display: block;
    float: left;
    width: 20%;
    padding: 5px 0;
    border-top: solid 5px #00192d;
    border-right: 1px solid #fff;
    background: #00192d;
    color: #fff;
    font-weight: bold;
    transition: all 0.2s ease;
    cursor: pointer;
    font-size: 1.8rem;
    text-align: center;
}

.tab_item:hover {
    opacity: 0.75;
}

.tab_item.b_non {
    border-right: 0;
}

input[name="tab_item"] {
    display: none;
}

.tab_content {
    display: none;
    padding: 15px 40px;
    clear: both;
    overflow: hidden;
    border: solid 1px #e5e5e5;
}

#tab1:checked~#tab1_content,
#tab2:checked~#tab2_content,
#tab3:checked~#tab3_content {
    /*驕ｸ謚槭＆繧後※縺�ｋ繧ｿ繝悶�繧ｳ繝ｳ繝�Φ繝��縺ｿ繧定｡ｨ遉ｺ*/
    display: block;
}

#tab1_content>dl:first-child,
#tab2_content>dl:first-child,
#tab3_content>dl:first-child {
    padding-top: 0;
}

#tab1_content>dl:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

#tab2_content>div:last-child,
#tab3_content>div:last-child {
    margin-top: 1em;
}

.tabs input:checked+.tab_item {
    background: #fff;
    color: #000;
}

.ir_bk li {
    position: relative;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    width: 50%;
    margin-right: 5%;
    background: url(../img/ir/ir_bk01.png) no-repeat;
    background-size: cover;
    color: #FFF;
    font-size: 2.1rem;
    -webkit-transition: all .2s;
    transition: all .2s;
}

.ir_bk li:nth-child(2) {
    background: url(../ir/ir_bk02.png) no-repeat;
    background-size: cover;
    margin-right: 0;
}

.ir_bk li:hover {
    opacity: .7;
}

.ir_bk a {
    display: block;
    min-height: 250px;
    padding: 20px 40px;
    color: #FFF;
}

.ir_bk h1 {
    font-weight: bold;
    font-size: 2.4rem;
    margin-bottom: 1em;
}

.ir_bk p {
    font-weight: bold;
    font-size: 2.4rem;
    margin-bottom: 1em;
}

.ir_bk .more_btn {
    position: absolute;
    bottom: 20px;
    right: 40px;
}

#box2017,
#box2016,
#box2015,
#box2014,
#box2013,
#box2012 {
    display: none;
}

#boxh30,
#boxh29,
#boxh28,
#boxh27,
#boxh26,
#boxh25 {
    display: none;
}

#select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    margin: 0;
    border: 0;
    outline: none;
    padding: 10px;
    background: transparent;
}

#select::-ms-expand {
    display: none;
}

.ir_select_box>div {
    margin-bottom: 50px;
}

.select_box {
    width: 250px;
    overflow: hidden;
    border: #e4e4e4 1px solid;
    border-radius: 5px;
    background: url(../img/cmn/icn_arw_btm.svg) 95% center no-repeat;
    background-size: 15px;
    margin-bottom: 2em;
}

.getacro {
    padding: 30px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-align-items: center;
    /* Safari */
    align-items: center;
}

.getacro .item:first-child {
    margin-right: 20px;
}

.question {
    position: relative;
    margin-left: 2.5em;
    text-indent: -1.5em;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.question::before {
    content: "Q.";
    color: #87a3af;
    margin-right: 0.5em;
}

.answer {
    position: relative;
    margin-left: 2.5em;
    text-indent: -1.5em;
    margin-bottom: 2em;
}

.answer::before {
    content: "A.";
    color: #87a3af;
    margin-right: 0.5em;
}

.answer p {
    text-indent: 0;
    margin-top: 1em;
}

.hako {
    overflow: hidden;
    border: solid 1px #87a3af;
    padding: 0.5em;
    text-indent: 0;
    margin: 0.5em auto;
}

.hako dt {
    width: 5em;
    float: left;
    font-weight: bold;
    text-align: center;
}

.hako dd {
    margin-left: 6em;
}


/* === sitemap === */

.sitemap_list {
    width: 28%;
}

.sitemap_list>li {
    margin-bottom: 40px;
}

.sitemap_list>li:last-child {
    margin-bottom: 0;
}

.sitemap_list>li>a,
.sitemap_list>li>span {
    display: block;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid #e5e5e5;
    font-weight: bold;
}

.sitemap_list>li>ul>li {
    position: relative;
    width: 100%;
    margin-bottom: 15px;
    padding-left: 20px;
    font-size: 1.4rem;
    font-weight: bold;
}

.sitemap_list>li>ul>li:before {
    position: absolute;
    top: 10px;
    left: 7px;
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 6px;
    border: 1px solid #A0A5B4;
    background: #FFF;
}

.sitemap_list a:hover {
    text-decoration: underline;
}

.sitemap_list>li>ul>li>ul>li,
.sitemap_list>li>ul>li>ul>li>ul>li {
    position: relative;
    padding-left: 20px;
}

.sitemap_list>li>ul>li>ul>li:before,
.sitemap_list>li>ul>li>ul>li>ul>li:before {
    position: absolute;
    top: 13px;
    left: 7px;
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 3px;
    background: #A0A5B4
}


/* === contact === */

.contact .list_more {
    margin: 20px 0 0 20px;
}

.list_flow {
    margin: 30px 0 40px;
}

.list_flow .current {
    position: relative;
    color: #FFF;
    background: -moz-linear-gradient(0% 50% 0deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0, rgba(0, 25, 45, 1)), color-stop(0.2412, rgba(0, 25, 57, 1)), color-stop(0.6631, rgba(0, 25, 73, 1)), color-stop(1, rgba(0, 25, 78, 1)));
    background: -ms-linear-gradient(0deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#00192D', endColorstr='#00194E' ,GradientType=0)";
    background: linear-gradient(90deg, rgba(0, 25, 45, 1) 0%, rgba(0, 25, 57, 1) 24.12%, rgba(0, 25, 73, 1) 66.31%, rgba(0, 25, 78, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00192D', endColorstr='#00194E', GradientType=1);
}

.list_flow .current:after {
    border-left-color: #00194E;
}

.list_flow li {
    position: relative;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
    width: 32%;
    height: 50px;
    line-height: 50px;
    background: #f3f3f3;
}

.list_flow li:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: -8px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 20px;
    border-color: transparent transparent transparent #f3f3f3;
    background-color: #fff;
}

.list_flow li:last-child:after {
    display: none;
}

.list_flow_step {
    position: relative;
    padding: 0 30px;
    font-size: 1.8rem;
    font-weight: bold;
}

.list_flow_txt {
    position: relative;
    padding-right: 30px;
    font-weight: bold;
}

.form_table {
    width: 100%;
    margin-bottom: 40px;
    text-align: left;
}

.form_table th,
.form_table td {
    padding: 30px;
    border: 1px solid #E8E8E8;
    vertical-align: middle;
    text-align: left;
}

.form_table th {
    width: 33%;
    background: #f3f3f3;
    font-size: 1.8rem;
}

.form_table td input[type="text"],
.form_table td input[type="tel"],
.form_table td input[type="email"] {
    width: 100%;
    padding: 5px 10px;
    min-height: 40px;
    border: 1px solid #E8E8E8;
    text-align: left;
    background: #fff5e4;
}

.form_table td.two input {
    width: 40%;
}

.form_table td.small input {
    width: 55%;
}

.form_table .sub {
    padding-left: 5px;
    font-size: 1.4rem;
}

.form_table td textarea {
    width: 100%;
    padding: 5px;
    border: 1px solid #E8E8E8;
    background: #fff5e4;
}

.form_table td.last {
    text-align: center;
}

.red_S {
    color: #ff0000;
    font-size: 1.6rem;
}

.form_table label {
    display: inline-block;
    width: 45%;
    font-weight: normal;
    line-height: 100%;
    vertical-align: baseline;
}

.form_table select {
    width: 45%;
    padding: 5px 10px;
    min-height: 40px;
    border: 1px solid #E8E8E8;
    text-align: left;
    background: #fff5e4;
}

.required,
.any {
    display: inline-block;
    font-size: 1.2rem;
    color: #FFF;
    padding: 0 5px;
    margin: 0 10px 0 0;
}

.required {
    background: #ff0000;
}

.any {
    background: #B7B7B7;
}

.btn_doui {
    margin: 20px 0;
    text-align: center;
}

.doui_box {
    width: 100%;
    margin-bottom: 40px;
    padding: 0 30px;
}

.contact_btn {
    text-align: center;
}

.contact_btn input {
    display: inline-block;
    padding: 15px 35px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 2.4rem;
    background: #ff8b00;
    border-radius: 4px;
    box-shadow: 0px 2px 2px rgba(152, 152, 152, 0.4);
    color: #FFF;
    -webkit-transition: all .2s;
    transition: all .2s;
}

.contact_btn input.button {
    font-size: 100%;
    font-weight: normal;
}


/*笆ｼ繝輔か繝ｼ繝�繝�じ繧､繝ｳ逕ｨCSS縲蠕後〒豸医☆*/


/*	窶ｻ荳玖ｨ倅ｽｿ逕ｨ縺励∪縺励◆,t2(2018/01/24)	*/

.contact_btn input.return {
    /*	譌ｧ��.contact_btn .return {	*/
    margin-right: 20px;
    padding: 15px 80px 15px 100px;
    background: url(../img/cmn/icn_arwWR.svg) no-repeat 10% center #B7B7B7;
}


/*笆ｲ繝輔か繝ｼ繝�繝�じ繧､繝ｳ逕ｨCSS縲蠕後〒豸医☆縲縺薙％縺ｾ縺ｧ*/

.btn_submit input:hover {
    opacity: 0.7;
}

.entry_txt {
    margin-bottom: 30px;
}

.entry_txt p {
    margin-bottom: 1em;
    text-align: center;
}

.entry_txt p:last-child {
    margin-bottom: 0;
}

.entry_txt p:last-child a {
    color: #333;
    text-decoration: underline;
}

.entry_txt p:last-child a:hover {
    text-decoration: none;
}

.btn_submit .return input {
    margin-right: 20px;
    background: #B7B7B7;
}


/* === folder:recruiting === */

.recruiting #header {
    background: rgba(0, 25, 45, 1);
}

.recruit_box {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.recruiting .recruit_box h2 {
    text-indent: -9999px;
    background: url(../img/recruiting/secimg_recruiting.jpg) no-repeat;
    width: 1100px;
    height: 356px;
    margin-bottom: 10px;
}

.recruit_menu {
    width: 1100px;
    border: solid #00192d;
    margin-bottom: 30px;
    padding: 10px 0;
    border-width: 0 1px 1px 1px;
}

.recruit_menu li {
    position: relative;
    width: 14%;
    text-align: center;
    border-right: solid 1px #00192d;
}

.recruit_menu li:last-child {
    border-right: 0;
}

.recruit_menu li a {
    display: block;
    text-align: center;
    color: #011a33;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
}

.recruit_menu li a.fS {
    font-size: 16px;
    font-size: 1.6rem;
}

.recruit_menu li a::after {
    position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    content: "";
    width: 0;
    height: 5px;
    z-index: 1;
    margin: 0 auto;
}

.recruit_menu li a:hover::after,
.recruit_menu li.current a:after {
    width: 80%;
    box-sizing: content-box;
    background: #1d2e61;
    transition: .3s;
}

.recruit_back {
    background: url(../img/recruiting/recruiting_back.png) no-repeat;
    margin: 0 auto;
    padding: 40px 0 0;
}

.saiyo_btn ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    -webkit-justify-content: space-around;
    /* Safari */
    justify-content: space-around;
}

.saiyo_btn li {
    border: solid 1px #000;
    position: relative;
    width: 485px;
    padding: 20px;
    background: white;
}

.saiyo_btn h3 {
    margin: -50px auto 1em auto;
    width: 250px;
    text-align: center;
}

.saiyo_btn h3 a {
    position: relative;
    font-weight: bold;
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #AE7DB5;
    background-size: 10px;
    color: white;
    display: block;
    font-size: 24px;
    font-size: 2.4rem;
    padding: 0.3em;
}

.saiyo_btn h3 a:hover,
.saiyo_btn h3.career a:hover {
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #231815;
    background-size: 10px;
}

.saiyo_btn h3.career a {
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #124291;
    background-size: 10px;
}

.saiyo_btn h4 {
    font-weight: bold;
    text-align: center;
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 0.5em;
    color: #011A33;
}

.saiyo_btn .txt {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
}

.recnav_entry {
    margin-top: 20px;
    padding: 10px 0;
    border: 2px solid #0A75B7;
    -webkit-transition: all .2s;
    transition: all .2s;
}

.recnav_entry:hover {
    opacity: 0.7;
}

.recnav_entry img {
    width: 200px;
    margin: 0 auto;
}

.career_entry a {
    display: block;
    background: url(../img/cmn/icn_arwW.svg) no-repeat 90% center #124290;
    text-align: center;
}

.recruit_btn {
    background: url(../img/recruiting/recruit_btn_back.png) no-repeat center center #156bac;
    width: 450px;
    margin: 2em auto;
    border-radius: 10px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
}

.recruit_btn a {
    position: relative;
    display: block;
    padding: 0.5em;
    color: white;
    text-align: center;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold;
    border-radius: 5px;
    background: url(../img/cmn/icn_arwW.svg) no-repeat 95% center;
    background-size: 10px;
}

.recruit_btn a:hover {
    background: url(../img/cmn/icn_arwW.svg) no-repeat 95% center #231815;
    background-size: 10px;
    border-radius: 5px;
}

.recruit_news {
    max-width: 800px;
    margin: 0 auto 40px;
    border: 10px solid #def1fb;
    background: #def1fb;
}

.recruit_news_txt {
    padding: 20px 30px;
}

.recruit_news_ttl {
    padding: 10px 20px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #FFF;
    background: #002E43;
}

.recruit_news_img {
    float: left;
    background: #FFF;
}

.recruit_news_img img {
    width: 240px;
    height: 168px;
    object-fit: contain;
    font-family: 'object-fit: contain;';
}

.recruit_news .news_txt {
    margin-left: 270px;
}

.recruit_news .news_txt dt {
    margin-bottom: 10px;
}

.recruit_news .news_txt dd h4 {
    margin-bottom: 5px;
    font-size: 1.8rem;
    font-weight: bold;
}

.recruit_news .news_txt dd h4 a {
    text-decoration: underline;
}

.interview_back {
    background: #d2ebf1;
    background: rgba(210, 235, 240, 0.7);
    max-width: 1100px;
    padding: 2em 0;
    overflow: hidden;
}

.interview_list {
    margin-bottom: 30px;
}

.interview_list li {
    width: 16.67%;
}

.recruit_title {
    padding: 1em 0 0.5em 0;
    font-weight: bold;
    text-align: center;
    font-size: 40px;
    font-size: 4rem;
    line-height: 4rem;
    color: #011A33;
}

.recruit_title span {
    display: block;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
}

.recruit_faq li {
    background: #def1fb;
    width: 48%;
    margin-bottom: 2em;
}

.recruit_faq li a {
    display: block;
    position: relative;
    padding: 0.3em;
    color: #231815;
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0.2em;
    font-weight: bold;
    background: url(../img/cmn/icn_arwB_rec.svg) no-repeat 95% center;
    background-size: 10px;
}

.recruit_faq li a:hover {
    background: url(../img/cmn/icn_arwW.svg) no-repeat 95% center #174987;
    background-size: 10px;
    color: white;
}

.recruit_faq li a::before {
    content: "Q";
    position: relative;
    padding: 0.2em 0.5em;
    background: #174987;
    color: white;
    text-align: center;
    margin-right: 0.5em;
}

.recruit_faq li a:hover::before {
    background: #def1fb;
    color: #174987;
}

.rec_more_link {
    margin-bottom: 30px;
    color: #174987;
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}

.rec_more_link a {
    padding-right: 20px;
    background: url(../img/cmn/icn_arwB_rec.svg) no-repeat right center;
    color: #174986;
}

.rec_more_link a:hover {
    color: #1ba3f9;
}

.interview_back .figure_box {
    width: 183px;
}

.interview_back a .figcaption_box {
    color: white;
}

.interview_back .figcaption_box dl {
    width: 100%;
}

.interview_back .figcaption_box dt {
    font-size: 20px;
    font-size: 2rem;
    text-align: center;
    font-weight: bold;
}

.interview_back .figcaption_box dd {
    text-align: center;
    font-weight: bold;
}

#howto .recnav_entry,
#contact .career_entry,
#howto .career_entry,
#reqruiting_faq .career_entry {
    max-width: 500px;
    margin: 20px auto;
}

.mailing {
    max-width: 650px;
    margin: 0 auto;
    border: solid 1px #011a33;
    font-size: 18px;
    font-size: 1.8rem;
}

.mailing dt {
    background: #011a33;
    text-align: center;
    color: white;
    padding: 0.5em;
}

.mailing dd {
    padding: 1em;
}

.recruit_dl {
    margin-bottom: 30px;
}

.recruit_dl dt {
    float: left;
}

.recruit_dl dd {
    margin-left: 3em;
}

.flow li {
    background: #e5e5e5;
    color: black;
    width: 600px;
    margin: 0 auto 2.5em auto;
    text-align: center;
    position: relative;
    padding: 0.5em;
}

.flow li::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2em;
    display: block;
    content: "▼";
}

.flow li:last-child::after {
    content: "";
}

.interview_img {
    float: left;
    margin-right: 20px
}

.interview_img img {
    width: 340px;
    height: auto;
}

.int_Rtxt {
    margin-left: 360px;
}

.job_img li:first-child {
    margin-right: 20px;
}

.wanted,
.norec,
.norecG {
    padding: 5px 10px;
    margin-left: 2em;
    font-size: 1.6rem;
    font-weight: bold;
    background: #F7A123;
    color: #FFF;
}

.norecG {
    background: #818181;
}

#bosyu h5 {
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 1.8rem;
}

#bosyu .tableDesign4 th {
    vertical-align: top;
}

.ttlDesign_newface {
    background: #AE7DB5;
    color: white;
    font-weight: bold;
    padding: 0.5em;
    margin-bottom: 1em;
    font-size: 18px;
    font-size: 1.8rem;
}

.ttlDesign_career {
    background: #12428e;
    color: white;
    font-weight: bold;
    padding: 0.5em;
    margin-bottom: 1em;
    font-size: 18px;
    font-size: 1.8rem;
}

.faq_title {
    color: #011a33;
    padding: 20px;
    font-size: 40px;
    font-size: 4rem;
    font-weight: bold;
    background: url(../img/recruiting/faq_back.png) center center no-repeat;
    min-height: 125px;
}

.faq_title span {
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
}

.rec_faq_list dt,
.rec_faq_list dd {
    position: relative;
    margin-bottom: 20px;
    padding: 0.5em;
}

.rec_faq_list dt {
    background: #def1fb;
    font-size: 1.8rem;
    font-weight: bold;
}

.rec_faq_list dt:before {
    content: "Q";
    position: relative;
    padding: 0.2em 0.5em;
    background: #174987;
    color: white;
    text-align: center;
    margin-right: 0.5em;
}

.rec_faq_list dd {
    padding-bottom: 20px;
    border-bottom: 1px solid #EBEBEB;
    padding-left: 3em;
}

.rec_faq_list dd:before {
    content: "A";
    position: absolute;
    left: 0.5em;
    padding: 0.2em 0.5em;
    background: #def1fb;
    color: #174987;
    text-align: center;
    margin-right: 0.5em;
    font-weight: bold;
}

.rec_faq_list dd p {
    margin-bottom: 1em;
}

.rec_faq_list dd>p:last-child,
.rec_faq_list>dd:last-child {
    margin-bottom: 0;
}

.rec_message_inr {
    max-width: 800px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.6);
}

.rec_message_inr p {
    max-width: 800px;
    margin-bottom: 2em;
}

#recfootnav {
    display: none;
    padding: 0 20px;
}

.googleform-wrapper_rec {
    position: relative;
    width: 100%;
    height: 1350px;
}

.googleform-wrapper_rec iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.timetable.pb10 {
    padding-bottom: 10px;
}

.icn_metro {
    padding-left: 25px;
    background: url(../img/cmn/icn_metoro.svg) no-repeat left center;
}

.icn_shiei {
    padding-left: 25px;
    background: url(../img/cmn/icn_osaka.svg) no-repeat left center;
}

table.corpoNew.tableDesign3.tableC {
    width: 100%;
}

table.corpoNew {
    font-size: 92%;
}

.corpoNew th {
    min-width: 118px
}

.corpoNew th:nth-child(2) {
    min-width: 152px;
}

.corpoNew .blue_btn {
    margin: .5em;
}

.ind1 {
    margin-left: 2em;
    text-indent: -2em;
}

a.blue_btn_bi {
    display: block;
    margin: 0 auto;
    padding: 15px 0;
    color: #FFF;
    font-weight: bold;
    background: #00a7ee;
    background-size: auto;
    background-size: 18px;
    border-radius: 4px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
    font-size: 130%;
    min-width: 380px;
}

a.blue_btn_bi:hover {
    opacity: 0.7
}

.imgml0 {
    margin: 0 0 0 auto;
}
.imgmc0 {
    margin: 0 auto;
}



/* アイコン */

.magnify.icon {
    color: #000;
    position: absolute;
    margin-top: 2px;
    margin-left: 3px;
    width: 12px;
    height: 12px;
    border: solid 1px currentColor;
    border-radius: 100%;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .magnify.icon:before {
    content: '';
    position: absolute;
    top: 12px;
    left: 5px;
    height: 6px;
    width: 1px;
    background-color: currentColor;
  }
  .magnify.icon i {
    position: absolute;
    left: 4px;
    top: 4px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .magnify.icon i:before {
    content: '';
    position: absolute;
    width: 6px;
    height: 1px;
    background-color: currentColor;
  }
  .magnify.icon i:after {
    content: '';
    position: absolute;
    width: 6px;
    height: 1px;
    background-color: currentColor;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }


/* サステナビリティ */

.sdgs_icn {
    float: right;
    max-width: 50%;
    margin-bottom: 40px;
}

.sdgs_icn p{
    font-size: 90%;
}



.sdgs_icn ul {
    display: flex;
    justify-content: flex-end;
}

.sdgs_icn ul li {
    margin-right: 10px;
}

.sdgs_icn img {
    max-width: 50px;
}

.sas_h3ttl{
    float: left;
}

.mw3h img{
    max-width: 300px;
}

.mw2h img{
    max-width: 200px;
}

.mh12h img {
    max-height: 120px;
}

.ecobanner{
    border: 10px solid #28a838;
    padding: 20px;
    border-radius: 20px;
}

.ecobanner.soye{
  border-color: #fcce05;
}


.env_aside{
    border: 1px solid #000;
    padding: 20px;
}

small.b80{
    display: block;
    font-size: 90%;
}

.bk_tree{
    background: url(../esgcsr/assets_c/env/tree.jpg) no-repeat;
    background-position: left;
    background-size: contain;
    padding-left: 300px;
}

.bk_point{
    background: url(../esgcsr/assets_c/env/point.jpg) no-repeat;
    background-position: left;
    background-size: contain;
    padding-left: 200px;
}

.ecobanner h5, .env_aside h5{
    font-size: 1.6em;
    font-weight: bold;
    color: #28a838;
}

.env_aside img{ margin-right: 20px;}

.social .ecobanner h5{
    color: #fcce05;
}

.zoom-in {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}

.egr th{
    color: #28a838;
}

.esgcsr .third_mainimg {
    background: url(../img/esgcsr/secimg_esgcsr.jpg) no-repeat center;
    background-size: cover;
}

.clm3-imgbox {
    margin-top: 20px;
    max-width: 100%;
}

.clm3-imgbox .flexbox_sbwap{
    flex-wrap: nowrap;
}

.clm3-imgbox li{
    width: 33.3%;
}

.clm3-imgbox li img{
    max-width: 100%;
    height: auto;
}

.clm3-imgbox li:not(:first-child){
    margin-left: 20px;
}

.env_mizu ul{
    max-width: 798px;
}
.env_mizu.clm3-imgbox li{
    flex:1;
    max-width: 100%;
    text-align: center;
}

.env_mizu li p{
    width: 95%;
    margin:0 auto;
    text-align: left;
}

.mizu_title{
    text-align: center;
}
.mizu_title p{
    margin: 20px 1em 20px;
    text-align: left;
}

.env_mizu.clm3-imgbox li:not(:first-child){
    margin-left: 0px;
}


.esgcsr ol {
    margin: 20px 2em 20px;
}

.esgcsr ol li{
    list-style-type: decimal
}

.smile.line1, .smile.line2{
    flex-wrap: nowrap;
}

.line2.arrow2 li::before {
    content: '';
    position: absolute;
    height: 0;
    border-left: 20px solid #12428b;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    top: 25%;
    left: -30px;
}

.msstart{
    justify-content: start;
}

.msend{
    justify-content: end;
}

.evimg_2line{
    margin-top: 20px;
    display: flex;
}

.evimg_2line li {
    width: 50%;
    padding: 0 20px;
}

.evimg_2line img {
    width: 100%;
    height: auto;
}

.arrow2.msend li::before {
    content: '';
    position: absolute;
    height: 0;
    border-left: 20px solid #12428b;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    top: 25%;
    left: -30px;
}

.clm3_w500{
    max-width: 100%;
    overflow: hidden;
}

figcaption.hover-mask {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0,0,0,0.5);
    opacity: 0;
    color: #fff;
    display: flex;
    align-items: center;
    text-align: center;
    z-index: 2;
    flex-direction: column;
}

figcaption.hover-mask div{
    text-align: center;
    font-size: 80%;
}

figcaption.hover-mask img{
    margin:0 auto;
}

figcaption.hover-mask {

    transition: all 0.6s ease;
    padding-top: 0;
}
figure.hover-parent:hover .hover-mask {
    padding-top: 30px;
    opacity: 1;
}

.lum-lightbox.lum-open img{
    margin:0 auto;
}

.lum-lightbox.lum-open{
    z-index: 99;
}

.soc_tag_mr {
    display: inline-block;
    padding: 0px 20px 0px 20px;
    color: #FFF;
    font-size: 1.4rem;
    background: #0a75b8 no-repeat 95% center;
    margin-left: 10px;
}

.soc_tag_dr {
    display: inline-block;
    padding: 0px 20px 0px 20px;
    color: #FFF;
    font-size: 1.4rem;
    background: #696969 no-repeat 95% center;
    margin-left: 10px;
}

.soc_tag_tm {
    display: inline-block;
    padding: 0px 20px 0px 20px;
    color: #FFF;
    font-size: 1.4rem;
    background: #f54e8e no-repeat 95% center;
    margin-left: 10px;
}

.pc_none{
	display: none;
}


.blur{
    animation-name:blurAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
  }

  .blur2{
    animation-name:blurAnime;
    animation-duration:2s;
    animation-fill-mode:forwards;
  }

  .blur6{
    animation-name:blurAnime;
    animation-duration:4s;
    animation-fill-mode:forwards;
  }
  
  @keyframes blurAnime{
    from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
    }
  
    to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
    }
  }
   
  .blurTrigger,.blurTrigger2s,.blurTrigger6s{
      opacity: 0;
  }

  


.mv_scroll {
    z-index: 2;
    cursor: pointer;
}

.mv_scroll div {
    padding-top: 60px;
    position: absolute;
    bottom: 20px;
    left: 50%;
    z-index: 2;
    display: inline-block;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    color: #fff;
    font: normal 400 20px/1 'Josefin Sans', sans-serif;
    letter-spacing: .1em;
    text-decoration: none;
    transition: opacity .3s;
    background: none;
    margin-left: -30px;
    

}

.mv_scroll div span {
    position: absolute;
    top: 0;
    left: 50%;
    width: 46px;
    height: 46px;
    margin-left: -23px;
    border: 1px solid #fff;
    border-radius: 100%;
    box-sizing: border-box;
  }
  .mv_scroll div span::after {
    position: absolute;
    top: 50%;
    left: 50%;
    content: '';
    width: 16px;
    height: 16px;
    margin: -12px 0 0 -8px;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    box-sizing: border-box;
  }
  .mv_scroll div span::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    content: '';
    width: 44px;
    height: 44px;
    box-shadow: 0 0 0 0 rgba(255,255,255,.1);
    border-radius: 100%;
    opacity: 0;
    -webkit-animation: sdb 3s infinite;
    animation: sdb 3s infinite;
    box-sizing: border-box;
  }
  @-webkit-keyframes sdb {
    0% {
      opacity: 0;
    }
    30% {
      opacity: 1;
    }
    60% {
      box-shadow: 0 0 0 60px rgba(255,255,255,.1);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes sdb {
    0% {
      opacity: 0;
    }
    30% {
      opacity: 1;
    }
    60% {
      box-shadow: 0 0 0 60px rgba(255,255,255,.1);
      opacity: 0;
    }
    100% {
      opacity: 0;
    }




