﻿.tel_contact span.sub_txt {
    display: block;
}
#sp_nav span.sub_txt {
    display: block;
}
span.sub_txt {
    color: white;
    text-align: center;
    font-size: 14px;
    margin-left: 15px;
}
#cms_3-e .cate_title {
    background: #000a19;
    border-left: 10px solid #a90000;
    padding-left:15px;
}

.border_color6 {
    border-color: #2e4053;
}
.bg_white {
    background-color: #000a19;
}
.border_color5 {
    border-color: #a90000;
}

.bg_color2 {
    background-color: #19354c;
}
.hvr_bg_color3:hover {
    background-color: #000a19;
}
#header .contact_bt a:hover, #pc_nav .contact_bt a:hover {
    color: white;
    background: #001f39;
}
#header .contact_bt:hover,#pc_nav .contact_bt:hover{
    background: #001f39;
}

#header .contact_bt,#pc_nav .contact_bt{
    background-color: rgb(201 20 20);
    transition:all 0.3s;
}
.bg_color3 {
    background-color:#001f39;
}
#top_cms .cms_title p {
    color: #c9171d;
    font-weight: bold;
    letter-spacing: 1px;
}
nav#pc_nav li a{
    text-shadow:none;
}
nav#pc_nav {
    z-index: 10;
}
#top_cms .cms_title h2 {
    font-weight: bold;
}
body,.font_serif,.font_en, a[href^="tel:"], #pc_nav, #sp_nav, .pager, .date, #contents1 .con_box .con_sub_title, #contents1-h .con_box .con_sub_title, #top_cms .cms_title h2, .more, #top_info .con_title, #page_title h2, .cate_list::before,.font_jp, .con_title, #page_title p, .cate_title, .box_title1, .box_title{
    font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; 
}
.txt_color2 {
    color: #ffffff;
}

div#main_b {
    width: 36vw;
    margin: auto;
}
#main_img .main_txt {
    bottom: 18%; 
}
#main_img:before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background: rgb(0 0 0 / 20%);
    z-index: 2;
    top: 0;
}
.bg_color1 {
    background-color: #000a19;
}
.catch_box {
    position: relative;
    padding-top: 100px;
    padding-bottom: 100px;
}
#catch figure:first-child {
    position: absolute;
    bottom: 0;
    left: 0;
}
#catch figure:last-child {
    position: absolute;
    top: 0;
    right: 0;
}
.catch_txt {
    margin: auto;
}
.catch_box h2{
    text-align: center;
    margin-bottom: 50px;
}
.catch_box h2 img {
    width: 85%;
}
#catch figure img {
    position: absolute;
    top: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
#catch figure {
    position: absolute;
        padding-top: 35%;
}

#contents1-h .con_title {
    left: -20px;
}
#contents1-h .con_box {
    max-width: 580px;
}
#contents1-h .con_box {
    margin-bottom: 0px;
}
#contents1-h .posi_abs {
    width: 70%!important;
}

#contents1-h div.grid_5 {
    padding: 50px 0;
}
#contents1-h .con_title::before{
    display:none;
}
#catch figure {
    width: 30% !important;
    max-width: 530px;
}
#contents1-h .con_box p {
    text-shadow: 0 0 10px black;
}
section#catch {
    padding-bottom: 150px;
}
section#top_banner {
    justify-content: center;
    padding: 0;
    box-sizing: border-box;
        padding-bottom: 80px;
}
section#top_banner .banner_box {
    width: 30% !important;
    padding: 10px;
}
section#top_banner .banner_box a {
    padding: 200px 0;
    background: transparent;
}
section#contents1-h {
    margin-bottom: 130px;
}
#top_banner a p {
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 1.5em;
    line-height:1em;
}
.banner_box span.font_2up.font_2dw_tb.font_jp.txt_color2.letter_3 {
    color: white;
}
section#top_banner .banner_box a:hover {
    color: white;
}
#top_banner a:hover p {
    background-size: 100% 2px; 
}

section#contents2 .con2_box{
    width: 75%;
    margin: auto;
}

#contents2 .con2_txt_wrap{
    margin-top:0;
}

#contents2 .con2_img::before{
    display:none;
}
#contents2 .con2_img {
    height: 400px;
}

#contents2 .con2_txt_wrap {
    margin-top: 0;
    background: #062049;
    padding-top: 20px;
    padding-bottom: 30px;
}

#contents2 p.con2_txt {
    width: 100% !important;
}
section#contents2 .con2_box:last-of-type {
    margin-top: 80px;
}
h3.con2_title2{
    z-index: 2;
    position: relative;
    top: 50px;
    width: 600px;
}
.con2_box:last-of-type h3.con2_title2 {
    width: 530px;
}

#top_cms{
    background:none;
}
.border_color2 {
    border-color: #195290;
}
.con2_img{
        background-position: 50% 20%;
}
.con2_img:after {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background: #0000003b;
    top: 0;
}
a.linkStyle {
    color: white;
    text-decoration: underline;
}
#page_title .page_title_box h2 {
    font-weight: bold;
    letter-spacing: 0px;
}
#page_title .page_title_box p {
    color: #c9171d;
    font-weight: bold;
}

/*---------------------------タブレット---------------------------------*/
@media screen and (max-width:768px){
    div#main_b {
    width: 50vw;
    margin: auto;
}
#main_img .main_txt {
    bottom: 22%;
}
#catch figure {
    width: 60% !important;
    max-width: 530px;
    position:relative !important;
}
#catch figure:last-child{
    margin-left: 0;
    margin-right: auto;
    margin-top: 80px;
}
#catch figure:first-child {
    position: relative;
    bottom: 0;
    margin-left: auto;
    margin-bottom: 80px;
}
.catch_box h2 img {
    width: 70%;
}
#contents1-h .posi_abs {
    width: 100%!important;
}
.catch_box {
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
}
section#contents1-h {
    margin-bottom: 0;
}
section#top_banner .banner_box {
    width: 100% !important;
    padding: 10px 20px;
}
section#top_banner .banner_box a {
    padding: 90px 0 110px;
    background: #ffffff1f;
}
section#contents2 .con2_box {
    width: 90%;
    margin: auto;
}
h3.con2_title2 {
    top: 60px;
    width: 450px !important;
}
section#contents2 .con2_box:last-of-type {
    margin-top: 30px;
}
section#top_banner{
    padding-bottom: 0;
}
#page_title h2 {
    font-size: 38px; 
}
}

/*--------------------------スマホ---------------------------------*/
@media screen and (max-width:667px){
 #header h1 img {
    height: auto;
    width: 160px!important;
    position: relative;
    top: -10px;
}
.catch_box h2 img {
    width: 90%;
}
.catch_box h2 {
    margin-bottom: 20px;
}
#catch figure {
    width: 70% !important; 
    padding-top: 50%;
}
#catch figure:first-child{
    margin-bottom: 50px;
}
#catch figure:last-child{
        margin-top: 50px;
}
section#catch {
    padding-bottom: 100px;
}
#contents1-h .con_title {
    left: -10px;
    margin-bottom: 20px;
}
#contents1-h .con_box {
    margin-bottom: 0px;
    padding: 0;
    margin-top: 40px;
}
#top_banner a p{
    font-size:1em;
}
section#top_banner .banner_box a {
    padding: 50px 0 60px; 
}
h3.con2_title2 {
    top: 60px;
    width: 85% !important;
}
section#contents2 .con2_box:last-of-type {
    margin-top: 0;
}
#page_title h2 {
    font-size: 28px;
}
div#main_b {
    width: 60vw; 
}
}