﻿@font-face {
    font-family: 'Ounen-mohitsu';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/Ounen-mouhitsu.woff') format('woff'),
        url('./Dup/img/Ounen-mouhitsu.eot')  format('eot');
    font-display: swap;
}
.font1{font-family: "Ounen-mohitsu","serif";}

/*
#page_top{
    position:absolute;
}
#top_menu{
    position: absolute;
    width: 40%;
}
#pc_nav{
    top: 30px;
    position: absolute;
    width: 100%;
}
*/
/*
#loading{
    display: none;
}
*/

/*--all page---------------------------
-------------------------------------*/
.linkStyle{
    color:#00211b;
    text-decoration:underline;
}
.linkStyle:hover{
    transition:all 0.3s;
    opacity:0.7;
}

body{
    overflow:hidden;
}

#logo2{
    max-width: 150px;
    margin: 0 auto 20px;
}
.fix_bnr{
    left:0;
    z-index:2;
}
.fix_bnr a:first-of-type i{
    vertical-align: -3px;
}
.fix_bnr a:last-of-type i{
    vertical-align: -6px;
}

/*--top page---------------------------
-------------------------------------*/
/*main_img scroll*/
/*スクロールダウン全体の場所*/
.scrolldown3{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	bottom:100px;
	right:50%;
    /*マウスの動き1.6秒かけて動く永遠にループ*/
	animation:mousemove 1.6s ease-in-out infinite;
	z-index: 3;
}

/*下からの距離が変化して上から下に動く*/
@keyframes mousemove{
      0%{bottom:100px;}
      50%{bottom:105px;}
     100%{bottom:100px;}
 }

/*Scrollテキストの描写*/
.scrolldown3 span{
    /*描画位置*/
	position: absolute;
	left:-15px;
	bottom:45px;
    /*テキストの形状*/
	color: #eee;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
}

/*マウスの中の線描写 */
.scrolldown3 span::after{
	content: "";
    /*描画位置*/
	position: absolute;
	top:10px;
	left:17px;
    /*線の形状*/
	width: 1px;
	height: 15px;
	background: #eee;
    /*線の動き1.4秒かけて動く。永遠にループ*/
	animation: mousepathmove 1.4s linear infinite;
	opacity:0;
}

/*上からの距離・不透明度・高さが変化して上から下に流れる*/
@keyframes mousepathmove{
	0%{
		height:0;
		top:10px;
		opacity: 0;
	}
	50%{
		height:15px;
		opacity: 1;
	}
	100%{
		height:0;
		top:30px;
		opacity: 0;
	}
}

/*マウスの描写 */
.scrolldown3:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-10px;
    /*マウスの形状*/
	width:25px;
	height:37px;
	border-radius: 10px;
	border:1px solid #eee;
}


/*マウスの中の丸の描写*/
.scrolldown3:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:26px;
	left:0;
    /*丸の形状*/
	width:5px;
	height: 5px;
	border-radius: 50%;
	border:1px solid #eee;
}


.top_con_wrap,
#top_cms,
.main_contents{
    background-color:transparent;
    background:url(./Dup/img/bg.jpg) repeat;
    background-size:300px;
}

#img_box4{
    background-color:transparent;
    background:url(./Dup/img/bg.jpg) repeat;
    background-size:300px;
}

.item3{
    top: -10%;
    right: 1%;
    width: 300px;
}
/*右回転*/
.rotate {
  display: inline-block;
  animation: r1 40s linear infinite;
}
 
@keyframes r1 {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); } 
}

#con3 .con3_title1{
    height:400px;
}
#con3 .con3_title2 {
    width: 400px;
    transform: translate(100%, -100%) rotate(90deg);
    transform-origin: left bottom;
    top: 0;
    right: -10px;
}
#top_link::before,
#top_link::after{
    content:'';
    position:absolute;
    display:block;
    pointer-events:none;
    z-index:2;
}
#top_link::before{
    width:25vw;
    max-width:600px;
    height:300px;
    background:url(./Dup/img/flag1.png) no-repeat;
    background-size:contain;
    top:-6px;
    left:0;
}
#top_link::after {
    width: 16vw;
    max-width: 600px;
    height: 200px;
    background: url(./Dup/img/flag2.png) no-repeat;
    background-size: contain;
    top: -3px;
    right: 0;
}

#cms1_box{
    background:url(./Dup/img/bg2.jpg) repeat;
    background-size:300px;
}
.top_cms_wrap{
    border-bottom:1px solid #023e33;
}


/*--under page---------------------------
-------------------------------------*/

.v_type1 .triangle {
    display: block;
    border: #000 solid 1px;
    box-shadow: 5px 5px 0 0 rgba(80,80,80,0.15);
}
.v_type1 .triangle:before {
    content: '';
    position: absolute;
    display: block;
    z-index: 1;
    border-style: solid;
    border-color: #FFF transparent;
    border-width: 13px 15px 0 0;
    bottom: -13px;
    left: 50%;
    margin-left: -10px;
}
.v_type1 .triangle:after {
    content: '';
    position: absolute;
    display: block;
    z-index: 0;
    border-style: solid;
    border-color: #000 transparent;
    border-width: 13px 16px 0 0;
    bottom: -14px;
    left: 50%;
    margin-left: -11px;
}


.qa_type1 .cate_box {
	border: 1px solid #909090;
}
.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: #5c5c5c;
}
.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: #f57f40;
}
.qa_type1 .cate_box .box_item {
	display: none;
	padding: 0px 30px 0px;
}
.qa_type1 .cate_box .box_txt1 {
	padding: 1em;
	background-color: #f5f5f5;
	border-radius: 5px;
}

@media screen and (max-width: 768px){
.qa_type1 .cate_box .open_bt .box_title1 {
	padding-right: 20px;
}
}
@media screen and (max-width: 667px){
.qa_type1 .cate_box .open_bt {
	padding: 5px 0 7px;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	margin-left: 73px;
}
.qa_type1 .cate_box .box_txt1 {
	padding: 0.2em 1.2em;
}
}


/* ---------- responshive ---------- */
@media screen and (max-width: 1536px){

}


@media screen and (max-width: 1366px){

}


/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#logo{
    width:100px;
}
#top_link::before {
    width: 40vw;
}
#top_link::after {
    width: 25vw;
}
#top_link .top_link_title {
    font-size: 30px;
}
#con3 .con3_title1 {
    height: 370px;
}
}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
#loading .loading_logo{
    width:150px;
}
#logo {
    width: 60px;
}
#main_img .main_txt{
    top:40%;
}
#main_img .main_txt h2{
    font-size: 23px;
    letter-spacing: 1px;
}
.scrolldown3{
	bottom:60px;
	animation: mousemove 1.4s linear infinite;
}

@keyframes mousemove{
      0%{bottom:60px;}
      50%{bottom:65px;}
     100%{bottom:60px;}
}
 
.item3 {
    top: -29%;
    right: -22%;
    width: 200px;
}
#top_link::before {
    width: 51vw;
}
#top_link::after {
    width: 30vw;
}
 #top_link .top_link_title{
    font-size: 21px;
    letter-spacing: 1px;
}
#con3 .con3_title1 {
    height: inherit;
}
#con3 .con3_title2 {
    width: auto;
    transform: none;
}
#con3 .con3_img {
    height: 60vw;
}
/*
.fix_bnr {
    width:100%;
}
.fix_bnr a {
    padding: 8px 9px 5px 12px;
    font-size: 0.8rem!important;
    letter-spacing: 0;
}
.fix_bnr a i{
    font-size:1.2rem;
    vertical-align: -3px;
}
*/
.fix_bnr{
    display:none!important;
}
#head_contact{
    display:none;
}
.bnr_sp{
    top:50px;
    right:0;
    z-index:3;
}
#page_top a{
    padding-right:20px;
}

}

/* スマホ向け */
@media (max-width: 768px) {
    .swiper-slide:nth-child(1) .slide-img {
        background-image: url('Dup/img/sp_img01.jpg')!important;
    }
    .swiper-slide:nth-child(2) .slide-img {
        background-image: url('Dup/img/sp_img02.jpg')!important;
    }
    .swiper-slide:nth-child(3) .slide-img {
        background-image: url('Dup/img/sp_img03.jpg')!important;
    }
}


