﻿@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Text&display=swap');
/*Top cms3のスワイパー*/
#top_conveyer .swiper-wrapper{
	transition-timing-function:linear;
}
/*お問合わせバナー*/
#fix_bnr{bottom: 5px;right: 50px;z-index: 5;width: 220px;}
@media screen and (max-width: 1280px){
	#fix_bnr{width: 150px;}
}
@media screen and (max-width: 768px){
#fix_bnr {
    bottom: 31px;
    width: 253px;
}
}
@media screen and (max-width: 667px){
#fix_bnr {
    bottom: 5px;
    right: 26px;
    max-width: 170px;
    width: 43%;
}
}
/*コード集から*/
.qa_type4 .cate_box{
	background-color: #edede9;
}
.qa_type4 .box_title1{
	cursor: pointer;
	letter-spacing: 0.5px;
	padding: 12px 36px 12px 50px;
	background-image: url(./Dup/img/faq_q.png);
	background-position: 10px 10px;
	background-repeat: no-repeat;
	background-size: 32px 32px;
}
.qa_type4 .box_title1:after{
	font-size: 20px;
	font-weight: bold;
	position: absolute;
	top: 5px;
	right: 10px;
	content: '\2b';
	display: inline-block;
	-webkit-transition: transform 0.4s;
	transition: transform 0.4s;
}
.qa_type4 .box_title1.open:after{
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
.qa_type4 .box_txt1 p{
	background-image: url(./Dup/img/faq_a.png);
	background-position: 6px 10px;
	background-repeat: no-repeat;
	background-size: 24px 24px;
	padding: 10px 10px 10px 40px;
}
.qa_type4 .box_title1:empty{
	height: 24px;
}

/* color */
.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #333333;}
.txt_white,.hvr_txt_white:hover{color: white;}
.txt_black,.hvr_txt_black:hover{color: black;}
.txt_red,.hvr_txt_red:hover{color: red;}
.txt_color1,.hvr_txt_color1:hover{color: #2a83a2;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #e0daca;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #165e83;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #d8c593;} /* アクセントカラー2 */

/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: #2a83a2;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #e0daca;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #165e83;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #d8c593;} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}

/* border-color ※!important */
.border_white,.hvr_border_white:hover{border-color: white;}
.border_black,.hvr_border_black:hover{border-color: black;}
.border_color1,.hvr_border_color1:hover{border-color: #2a83a2;}
.border_color2,.hvr_border_color2:hover{border-color: #e0daca;}
.border_color3,.hvr_border_color3:hover{border-color: #165e83;}
.border_color4,.hvr_border_color4:hover{border-color: #d8c593;}

.linkStyle{
    color:#333;
}
.linkStyle:hover{
    transition:all 0.3s;
    opacity:0.7;
    text-decoration:underline;
}


/*スクリーンショット用*/
/*#main_img,
#page_title_img{
    background-image:url(./Dup/img/main_img.jpg)!important;
    background-size:100% auto;
    background-position:center center;
}
#luxy{
    transform:none!important;
    position:initial!important;
}
*/


/*--all page---------------------------
-------------------------------------*/
body,
#page_title .jp{
    font-family: 'Shippori Mincho B1',"游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
.hgs {
    font-family: "hgs",'Shippori Mincho B1',"游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
.patrima {
    font-family: 'DM Serif Text', serif;
}
#wrap{
    line-height:2;
}
.blur{
    /*background:rgba(255,255,255,0.7);*/
	background: url("./Dup/img/bg.jpg");
}
.txt_white, .hvr_txt_white:hover {
    color: #333;
}
.more .txt_white {
    color:#fff;
}
#pc_nav li a,
footer .txt_white,
.patrima,
#top_cms,
.cate_list a,
#cms_2-b .cate_title,
#contact_tel a,
#page9 a {
    color:#fff;
}
.more .more_item:before {
    background-color: #e0daca;
}
.more .more_item:hover{
    border-color: #e0daca;
}

.more .more_item:after{
    display: none;
}
#pc_nav li a::after, #footer_nav li a::after {
    background: #e0daca;
}
#logo{
    opacity:0;
} 
#logo img{
    max-width:150px;
}
header.scr_header {
    background-color: rgba(22,94,128,0.7)!important;
}
.scr_header #logo{
    opacity:1;
    transition:all 0.7s;
}
.scr_header #logo img{
    max-width:200px;
}
.more .more_item:hover{
    border-color: #165e83;
    
}
.more .more_item:hover .icon-right.after:after{
    color: #165e83;
}

.more .more_item:after{
    background: transparent;
}
.map{
    display:none;
}
#footer_info{
    background-color:#333;
}
#logo2{
    margin-top:40px;
}
.info_txt{
    width:100%!important;
}
.info_btn_wrap{
    padding-bottom:20px;
}
.info_btn_wrap a{
    background-color: #165e83;
}
#footer_nav_wrap li a{
    color:#333;
}
#footer_nav li a::after{
    background:#333;
}
.overlay .overlay-nav{
    padding-top:5%;
}
.overlay .overlay-nav .en{
    font-size: 18px!important;
    font-family:'Shippori Mincho B1', "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
overlay-img {
    background-position: left;
}
.menu-trigger,
.close-trigger{
    top:65%;    
}
.menu-trigger-bar,
.close-trigger-bar{
    height:2px;
}
#copyright{
    background-color:#333;
}


/*--top page---------------------------
-------------------------------------*/
#main_img .catch {
    z-index: 1;
    width: 50%;
    max-width: 600px;
}
.txt_anim1 span,
.txt_anim2 span,
.txt_anim3 span{
	position: relative;
	right: 20px;
	opacity: 0;
	transition: all 1.8s;
}
.txt_anim1 span.start,
.txt_anim2 span.start,
.txt_anim3 span.start{
	right: 0;
	opacity: 1;
}

#intro_wrap {
	background-image: url("./Dup/img/deco1.png"),url("./Dup/img/deco2.png");
	background-position: top left,bottom right;
	background-size: 30%,30%;
	background-repeat: no-repeat;
}
#intro .intro_photo h2,
.intro_title{
    letter-spacing: -2px;
}
.intro_title {
  position: relative;
  padding: 1em 1.5em;
  text-align: center;
}
.intro_title:before,
.intro_title:after {
  position: absolute;
  content: '';
}
.intro_title:after {
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  border-top: 2px solid #165e83;
  border-left: 2px solid #165e83;
}
.intro_title:before {
  right: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  border-right: 2px solid #165e83;
  border-bottom: 2px solid #165e83;
}
#contents .con_title {
    font-size: 48px;
    line-height: 1;
    margin-bottom:30px;
}
.con_txt {
  position: relative;
  padding: 1em 1.5em;
  text-align: center;
  font-size: calc(100% + 8px);
}
.con_txt:before,
.con_txt:after {
  position: absolute;
  content: '';
}
.con_txt:after {
  top: 0;
  left: 0;
  width: 50px;
  height: 50px;
  border-top: 2px solid #165e83;
  border-left: 2px solid #165e83;
}
.con_txt:before {
  right: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  border-right: 2px solid #165e83;
  border-bottom: 2px solid #165e83;
}
#contents .con_img {
	box-shadow: 30px 30px 0px #43548c;
}
.top_title .right > span:before{
    display:none;
}
.top_title .patrima {
	z-index: 1;
}
.top_cms_box{
    border:0;
    background: #2a8099;
    box-shadow: 30px 30px 0px #43548c;
}
.cms_title{
    position:relative;
}
.cms_title:before{
    content:'';
    position:absolute;
    display:block;
    width:80px;
    height:1px;
    top:25px;
    left:-100px;
    background-color:#fff;
}
.cms_title h3{
    font-size:35px;
}
.bnr{
    right:10px;
    z-index:2;
}

/*--under page---------------------------
-------------------------------------*/
#page_title{
    color:#333;
}
#page_title .jp  {
    color: #333;
    font-size: 14px;
    font-weight: bold;
}
.pager li a {
    background-color: rgba(255,255,255,0.7)!important;
}
.pager li a:hover {
    background-color: rgba(42,131,162,0.5)!important;
}
.con_box.pd_5per {
    padding:0;
}
#page10 .con_box > ul{
    border-color:#165e83;
}
#page10 .con_box li a{
    color:#333;
}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#intro_wrap {
	background-image: none;
}
.intro_title{
    font-size: 28px;
    letter-spacing: 3px;
    line-height: 1.5;
}
#contents .con_title {
    font-size: 40px;
}
.con_txt {
  padding: 0.5em 1em;
  font-size: calc(100% + 2px);
}
.con_txt:after {
  width: 30px;
  height: 30px;
}
.con_txt:before {
  width: 30px;
  height: 30px;
}
#contents .con_img {
	box-shadow: 15px 15px 0px #43548c;
}
.top_cms_box{
    box-shadow: 15px 15px 0px #43548c;
}

.cms_title:before{
    width: 50px;
    left: -70px;
}
.menu-trigger, .close-trigger {
    top: 60%;
}
.page .page_container{
    padding-top:100px;
}
#copyright{
    padding-bottom:30px;
}
#footer_info .sns_links{
    justify-content: center;
    align-items: center;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.menu-trigger {
    top: 70%;
}
.scr_header #logo img {
    max-width: 180px;
}
.intro_title{
    font-size: 23px;
}
#contents .con_title {
    margin-top:30px;
}
.cms_title h3 {
    font-size: 25px;
}
.cms_title:before {
    width: 30px;
    left: -30px;
    top:13px;
}
#copyright {
    padding-bottom: 70px;
}
footer .scroll {
    top: 100px;
}
#page7 .con_box.pd_5per,
#page8 .con_box.pd_5per,
#page9 .con_box.pd_5per,
#page10 .con_box.pd_5per{
    padding: 0 5%;
}
}

/* ---------- IEの処理 ---------- */
@media all and (-ms-high-contrast: none){
#contact_tel a{
    padding-top:20px;
}
.bnr a{
    padding-bottom:13px;
}
.more .more_item{
    padding-top:7px;
    padding-bottom:9px;
}
.cate_list li a{
    padding-top:7px;
}
#cms_6-a .cate .cate_title{
    padding-top:7px!important;
}
#page9 .box a{
    padding-bottom:5px;
}

}