﻿body {
    font-family: 'Roboto', "Noto Sans JP", YuGothic,"Yu Gothic","游ゴシック体","游ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
}

#intro h2, #contents1 h2, #contents2 h2, #topintro h3, #top_cms h2 {
    font-weight: 900;
}

/* ======================================================================================
　　color
======================================================================================== */
.linkStyle{color: #160a0a;transition: opacity .3s;text-decoration: underline;}
.linkStyle:hover{opacity: 0.7}




/* ======================================================================================
　　all
======================================================================================== */

/* ---------- header ---------- */
#header .grid_10 {
    background: transparent;
}
#header .grid_9 li a {
    color: #fff;
}
header .inner {
    box-shadow: none;
    background: transparent;
}
#header.head_fix #pc_nav ul {
    height: 81px;
}
#header.head_fix #pc_nav ul:last-of-type {
   border-radius: 0 10px 10px 0; 
}
#header.head_fix .inner {
    box-shadow: 0 1px 6px rgb(0 0 0 / 16%);
    background: #fff;
}
#header.head_fix .grid_9 li a {
    color: #212121;
}

/*header お問い合わせボタン*/
#header ul.grid_2 {
    padding: 0;
}
#pc_nav ul:last-of-type li a {
    padding: 17px 0;
    background-color: #ff5915;
    border-radius: 9px;
    transition: all 0.5s;
}
#pc_nav ul:last-of-type {
    background: transparent;
}
#pc_nav ul:last-of-type li {
    width: 100%;
}
#header.head_fix #pc_nav ul:last-of-type li a {
border-radius: 0 10px 10px 0;
padding: 27px 0;
}

#pc_nav ul:last-of-type li:hover {
    transform: inherit;
}
#pc_nav ul:last-of-type li:hover a {
    background: #005c99;
}

/* ---------- footer ---------- */
#f_contact {
    background: url("../dup/img/f_img.jpg") center / cover no-repeat!important;
}


/* ======================================================================================
　　top
======================================================================================== */

/* ---------- main_img ---------- */
#main_img::before {
    content: "";
    display: inline-block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    opacity: 0.26;
    background-color: #000;
}
#main_img .txt {
    top: 33%;
    left: 7vw;
}
.catch_title {
    width: 80%;
    max-width: 850px;
    margin-bottom: 26px;
}
#main_img .txt.animStart .catch_title {
    opacity: 0;
}
#main_img .txt.animStart .catch_title {
    animation: heroText 600ms 800ms both;
}

.item1 {
    z-index: 2;
    left: 0;
    bottom: 0;
    width: 20vw;
}
.item2 {
    z-index: 2;
    right: 0;
    top: 0;
    width: 19vw;
}


/*CIRCLE*/
.circle-btn__center {
    position: relative;
    z-index: 1;
    display: block;
}
.circle-btn__txt {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 2;
	overflow: hidden;
	border-radius: 50%;
}
.circle-btn > img {
    -webkit-animation: rotate 19s linear infinite;
    animation: rotate 19s linear infinite;
}
@keyframes rotate {
	0% {
    transform: rotate(0);
}
100% {
    transform: rotate(
1turn);
}
}
.circle-btn {
    bottom: 50px;
    right: 40px;
    z-index: 10;
    cursor: pointer;
    transition: transform 1s cubic-bezier(.23,1,.32,1),opacity .5s;
    z-index: 6;
    background: #fff;
    border-radius: 50%;
    width: 200px;
    height: 200px;
    padding: 10px;
}
.circle-btnPic {
	width: 150px;
	height: 150px;
	border-radius: 50%;
} 
.circle-btn:hover .circle-btnPic {
	transform: scale(1.2);
}

/* ---------- contents ---------- */
.point{
    display: block;
    width: 136px;
    margin-bottom: 19px;
}
#contents2 .point{
    margin: 0 auto 19px;
    margin-top: -23px;
}
.point img{
	animation: bound-anim 1.2s infinite;
}
@keyframes bound-anim {
	0%,100% {transform: translateY(0) scale(1);}
	30% {transform: translateY(-25%) scale(1);}
	40% {transform: translateY(-25%) scale(1);}
	60% {transform: translateY(0) scale(1);}
	75% {transform: translateY(-25%) scale(1);}
	95% {transform: translateY(0) scale(1);}
}

#contents1 {
    background: linear-gradient(160deg, transparent 35vw, #f4f4f4 0%);
    z-index: 0;
}
#contents1 span {
    display: none;
}
.check {
    background: #ffffff;
    padding: 15px;
    display: inline-block;
    margin-bottom: 25px;
}
.check li {
    background: url(Dup/img/check.png);
    background-repeat: no-repeat;
    background-position: 0 5px;
    background-size: 28px;
    padding: 5px 5px 5px 38px;
    font-size: 16px;
}

/* ======================================================================================
　　under
======================================================================================== */

.con_bnr {
    width: 90%;
    max-width: 574px;
    margin-bottom: 33px;
}

/* ---------- cms3 ---------- */
.flow_type4 .box_description2{
	border-left: dotted 4px #1e2b38;
	background-color: rgba(204, 204, 204, .35);
}
.flow_type4 .box_txt1,
.flow_type4 .box_txt2{
	padding-left:20px;
}
.flow_type4 .box_wrap{
    position: relative;
    padding-left: 30px;
}
.flow_type4 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 30px);
    border-left: 4px dotted #1e2b38;
    position: absolute;
    top: 30px;
    left: 26px;
}
.flow_type4 .cate_box:last-of-type{
	padding-bottom: 0;
}
.flow_type4 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
.flow_type4 .box_description2 span{
	position: absolute;
    display: inline-block;
    width: 68px;
    top: 5px;
    left: -38px;
}
@media screen and (max-width: 768px){
.flow_type4 .cate_box{
	flex-direction: column-reverse;
}
.flow_type4 .box_description2 span {
	width: 61px;
	left: -34px;
}
}
@media screen and (max-width: 667px){
.flow_type4 .box_wrap{
    padding-left: 23px;
}
.flow_type4 .box_wrap:before {
    left: 19px;
}
}


/* -- page8.html -- */
#page8 #form_box .box input::-webkit-input-placeholder,#page8 #form_box .box textarea::-webkit-input-placeholder{
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
	font-size: 14px;
	opacity: 0.8;
}
#page8 #form_box .box input:-moz-placeholder,#page8 #form_box .box textarea:-moz-placeholder{
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
	font-size: 14px;
	opacity: 0.8;
}
#page8 #form_box .box input::-moz-placeholder,#page8 #form_box .box textarea::-moz-placeholder{
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
	font-size: 14px;
	opacity: 0.8;
}
#page8 #form_box .box input:-ms-input-placeholder,#page8 #form_box .box textarea:-ms-input-placeholder {
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif;
	font-size: 14px;
	opacity: 0.8;
}
#page8 #form_box #form_bt div{
	display: inline-block;
	height: 50px;
	position: relative;
	-ms-transition: all 0.5s;
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}
#page8 #form_box #form_bt div input{
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 99;
	top: 0;
	left: 0;
	padding: 15px;
	cursor: pointer;
	border: none;
	background-color: transparent;
	-webkit-appearance: none;
}
#page8 #form_box #form_bt div:hover{
	transform: translate(0,-5px);
	box-shadow: 0 2px 4px rgba(0,0,0,0.5);
}
#page8 #form_box #form_bt div::after{
	display: block;
	position: absolute;
	width: auto;
	height: 18px;
	letter-spacing: 3px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	line-height: 1;
	z-index: 98
}
#page8 #form_box #form_bt #submit::after{
	content: "送信";
}



/* ======================================================================================
　　window size
======================================================================================== */

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#main_img {
    height: 750px!important;
}
#main_img .txt {
    top: 47%;
}
    
#fix_bnr {
    bottom: 12px;
    right: 18px;
}
.circle-btn {
    bottom: 36px;
    right: 40px;
    width: 156px;
    height: 156px;
}
.circle-btnPic {
    width: 120px;
    height: 120px;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
#main_img {
    height: 268px!important;
}
#main_img .txt {
    top: auto;
    left: 7vw;
    bottom: 21px;
    width: 95%!important;
}

#fix_bnr {
    bottom: 0px;
    right: auto;
    left: 20px;
}
.circle-btn {
    bottom: 10px;
    right: auto;
    left: -5px;
    width: 120px;
    height: 120px;
    padding: 4px;
}
.circle-btnPic {
    width: 85px;
    height: 85px;
}
}


/* fix_bnr ---------------------------------------------------------------------------------------------*/
#fix_bnr {
    bottom: 0;
    right: 18px;
    z-index: 25;
    transition: 0.5s;
}
#fix_bnr.close{
    opacity: 0;
    z-index: -1;
}
/* fix_bnr end ---------------------------------------------------------------------------------------------*/

/* video */
#main_img,#video{height: 100vh!important;overflow: hidden;}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#main_img,#video {height: 500px!important;}
#main_img{margin-top: 88px;}
#main_img .txt {
    top: 39%;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
#main_img,#video {height: 38vh!important;}
#main_img{margin-top: 65px;}
#main_img .txt {
    top: 49%;
}
}

