﻿@import url('https://fonts.googleapis.com/css2?family=Zen+Kurenaido&display=swap');

body, input, textarea, .font_sans-serif{
    font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
}

.hannari, .pop300, .pop400, .cate_title, #form_bt input, .tel_title, a[href^="tel:"]{
    font-family: 'Zen Kurenaido', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
}

.font_bold{
    font-weight: normal;
}

/*** fade ***/

.fadein .fade_box{
    opacity: 0;
    transform: translateY(20px);
    filter: blur(5px);
    transition: 1s;
    transition-property: opacity, transform, filter;
}
.fadein .fade_box.active{
    opacity: 1;
    transform: none;
    filter: none
}

/*** other ***/

#loader_h{
    z-index: 100;
}

html, body{
    font-size: 14px;
}

h2, h3, h4, h5, h6{
    line-height: 1.5;
}

#fakeloader{
    background-color: #000a26;
}
#fakeloader::before{
    display: none;
}

.nav_menu_more:last-of-type a .icon:before{
    display: none;
}
#top_pc_nav{
    display: none;
}

.back1:before, .back2:before{
    display: none;
}

#pc_nav li, #top_pc_nav li, #footer_nav li{
    max-width: inherit;
}

#wrap{
    background-image: url('./Dup/img/bg_img.jpg');
    background-attachment: fixed;
    background-size: 1200px;
}

header{
    top: 0;
    left: 0;
}
header.scr_header {
    background-color: rgba(0,10,38,0.5)!important;
    backdrop-filter: blur(3px);
}
.overlay{
    background: linear-gradient(to bottom right, rgba(0,10,38,0.9), rgba(59,106,117,0.9))!important;
}
header #logo {
    max-width: 150px!important;
}

#pc_nav li a::after, #top_pc_nav li a::after, #footer_nav li a::after{
    height: 1px;
    background-color: currentColor!important;
}

#intro_wrap, section[id^="page"] > div > .con_box, #contents3_h, #top_items{
    background-color: rgba(4,31,91,0.4);
}

#contents3_wrap_h{
    background-image: url(./Dup/img/bg_img2.png), url(./Dup/img/bg_img3.png);
    background-repeat: no-repeat;
    background-position: top -50px left -50px, bottom -50px right -50px;
    background-size: 350px;
}
#contents3_h .icon_no{
    width: 40px;
    height: 40px;
    line-height: 40px;
    left: 0;
    right: 0;
    top: -17px;
    margin: auto;
    transform: rotate(45deg);
    z-index: 1;
}
#contents3_h .icon_no span{
    transform: rotate(-45deg);
}

#top_cms .more_btn{
    max-width: 200px;
}
.more_btn{
    color: #fff;
    z-index: 1;
}
.more_btn::before, .more_btn::after{
    top: -1px;
    width: 10px;
    height: 100%;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
}
.more_btn::before{
    left: 0;
    border-left: solid 1px #fff;
}
.more_btn::after{
    right: 0;
    border-right: solid 1px #fff;
    background-color: transparent!important;
    transition-delay: 0s!important
}
.more_btn:hover::before, .more_btn:hover::after{
    width: 50%;
}

#info_contact .con_box a{
    display: block;
    z-index: 1;
}
#info_contact .con_box a::before{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 10px;
    left: 10px;
    border: solid 1px #fff;
    opacity: 0.2;
}
#info_contact a .con_img:before{
    background-color: #000a26;
    opacity: 0.6;
    transition: opacity 0.3s;
}
#info_contact a:hover .con_img:before{
    background-color: #000a26;
    opacity: 0.8;
}

#top_cms .cms_title{
    text-align: center;
}
#top_cms .cms_title p{
    padding-bottom: 10px;
    margin-bottom: 30px;
    border-bottom: solid 1px;
    display: inline-block;
}
#top_cms .cms_title h3{
    font-size: 30px;
}

#page_title:before{
    background-color: #000a26!important;
    opacity: 0.8;
}
#page_title .page_title_box {
    background-color: transparent;
    padding: 30px 50px;
    border: solid 1px;
    top: auto;
    left: auto;
    transform: none;
}
#page_title .page_title_box p{
    padding-bottom: 15px;
    margin-bottom: 20px;
    border-bottom: solid 1px #fff;
    color: #ceb757;
}

.cate_title{
	background-color: transparent;
	padding: 0;
	margin: 0;
	display: block;
	border: none;
	width: 100%!important;
	font-size: 24px;
	text-align: center;
	padding-top: 60px!important;
	margin-bottom: 50px;
	color: #fff;
	font-weight: normal;
	background-image: url('./Dup/img/bg_img1.png');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 50px;
}

.cate_list li{
    max-width: 100%;
    width: auto!important;
    margin-right: 0;
    padding: 0 5px;
    margin-bottom: 10px;
}
.cate_list li a, .pager li a{
    background-color: rgba(238,238,238,0.1);
}
.cate_list li a:hover, .pager li a:hover{
    background-color: #000a26;
}

.return::before, .return::after{
    background-color: #fff;
}
.return a{
    color: #fff;
}

#cms_4-a_h .cate_item .cate_name::before, .cms_4-a_h .cate_item .cate_name::before, #top_items .cate_item .cate_name::before{
    position: absolute;
    content: "";
    width: 50px;
    height: 3px;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    background-color: #ceb757;
}
#cms_4-a_h .open .cate_name::before{
    position: absolute;
    content: "";
    width: 50px;
    height: 3px;
    left: 0;
    right: 0;
    bottom: -3px;
    margin: auto;
    background-color: #ceb757;
}
#cms_4-a_h .cate_item, #top_items .cate_item{
    cursor: pointer;
}
#cms_4-a_h .cate_item figure img, .cms_4-a_h .cate_item figure img, #top_items .cate_item figure img{
    display: block;
    transition: 0.5s;
    transition-property: opacity, transform;
}
#cms_4-a_h .cate_item:hover figure img, .cms_4-a_h .cate_item:hover figure img, #top_items .cate_item:hover figure img{
    opacity: 0.6;
    transform: translate(-50%, -50%) scale(1.1);
}
#cms_4-a_h .open, #top_items .open{
    top: 0;
    left: 0;
    z-index: 10;
    overflow-y: auto;
    background-color: rgba(0,10,38,0.9);
    backdrop-filter: blur(3px);
    transform: scale(0.95);
    transition: 0.3s;
    transition-property: opacity, transform;
    opacity: 0;
    pointer-events: none;
}
#cms_4-a_h .open.active, #top_items .open.active{
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
}
#cms_4-a_h .open .close, #top_items .open .close{
    top: 20px;
    right: 20px;
    z-index: 1;
    cursor: pointer;
    width: 30px;
}
#cms_4-a_h .swiper-slide{
    opacity: 1!important;
}
#cms_4-a_h .slide_img .thumbnail .swiper-wrapper{
    margin-left: 0!important;
    transform: none!important;
}
#cms_4-a_h .slide_img .thumbnail .swiper-wrapper .swiper-slide{
    cursor: pointer;
}
#cms_4-a_h .cate_box:last-child{
    border-bottom: none;
}
.cms_4-a .cate_box:last-child{
    border-bottom: none;
}

.qa_type1 .cate_box .arrow {
	position: absolute;
	left: 2px;
	top: 50%;
	margin-top: 0px;
	transform: translateY(-50%);
}
.qa_type1 .cate_box .open_bt{
	position: relative;
	width: 100%;
	cursor: pointer;
	padding: 20px 0
}
.qa_type1 .cate_box .open_bt .arrow::before, .qa_type1 .cate_box .open_bt .arrow::after {
	position: absolute;
	content: '';
	width: 15px;
	height: 1px;
	background-color: #fff;
}
.qa_type1 .cate_box .open_bt .arrow::before {
	top: 48%;
	left: 15px;
	transform: rotate(0deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow::after {
	top: 48%;
	left: 15px;
	transform: rotate(90deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow.arrow_be::before {
	transform: rotate(-135deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow.arrow_be::after {
	transform: rotate(135deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	display: inline-block;
	position: relative;
	letter-spacing: 1px;
	cursor: pointer;
	margin-left: 87px;
}
.qa_type1 .cate_box .open_bt .box_title1::before {
	content: "Q.";
	position: absolute;
	left: -32px;
	top: 0px;
	display: inline-block;
	vertical-align: baseline;
	color: #ceb757;
}
.qa_type1 .cate_box .box_item {
	display: none;
}

#cms_6-c_h .box_wrap, .cms_6-c_h .box_wrap{
    justify-content: flex-start;
}
#cms_6-c_h .box_txt_bt, .cms_6-c_h .box_txt_bt{
    cursor: pointer;
}

#page8 #form_box .box input, #page8 #form_box .box textarea{
    background-color: rgba(147,226,191,0.1)!important;
}
#page8 input, textarea{
    color: #fff!important;
}
#page8 input::placeholder, textarea::placeholder {
    color: rgba(255,255,255,0.5)!important;
}

#page10 .more_btn, .more_btn.max-width, .cms_6-c_h .more_btn{
    max-width: inherit!important;
    background-color: rgba(255,255,255,0.1);
}
#page10 .more_btn .en{
    color: #ceb757;
}

#footer{
    background-color: transparent!important;
}
#footer .sns_links{
    text-align: left;
    max-width: 90%;
    padding-top: 20px;
    border-top: solid 1px rgba(238,238,238,0.2);
}
.footer_banner a{
    background-image: linear-gradient(to bottom right, #ffff99, #93e2bf);
    border-radius: 50px;
    color: #005962;
}

#copyright{
    background-color: #000a26;
}



/** tablet 780 **/
@media screen and (max-width: 768px){
#wrap{
    background-attachment: scroll;
}
#contents2 .con_box{
    margin-top: 0;
}
#page_title .page_title_box{
    top: 35%;
}
#main_img #left, #main_img #right{
    height: 600px!important;
}
}

/** mobile 750 **/
@media screen and (max-width: 667px){
.font_9_sp{
    font-size: 9px;
}
#overlay .left{
    margin-bottom: 20px;
}
#overlay .right{
    display: block;
}
.overlay .overlay-menu{
    height: auto;
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 12px;
}
#overlay .left li{
    margin-bottom: 5px;
}
#overlay .left li.d_block_sp{
    display: none;
}
#page_title .page_title_box {
    width: auto;
    padding: 30px;
}
#main_img #left, #main_img #right{
    height: 50vh!important;
}
header #logo {
    max-width: 120px!important;
}
#top_cms .cms_title h3{
    font-size: 24px;
}
.cate_list li{
    width: 100%!important;
}
.cate_title{
    font-size: 20px;
}
.qa_type1 .cate_box .open_bt {
	padding: 5px 0 7px;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	margin-left: 70px;
}
.qa_type1 .cate_box .open_bt .box_title1::before{
    left: -23px;
}
.qa_type1 .cate_box .arrow{
    left: -6px;
}
}

/** IE **/
@media all and (-ms-high-contrast:none) {
#wrap{
    background-attachment: scroll;
}
.more_btn{
    padding-bottom: 10px!important;
}
#cms_6-c_h .date{
    margin-bottom: 15px;
}
#page10 .more_btn{
    padding-top: 15px!important;
}
}