﻿@charset "UTF-8";

/* layout */
/*=============================
	Sub(Lower)Page setting
===============================*/
.submainbox{
	text-align: center;
	padding: 15% 0 5%;
    background: url("/img/cmn/h2.png") repeat;
	}
.submainbox h2{
    margin: 0 auto;
	font-size:2.0rem;
	line-height: 1.3;
	letter-spacing: .1em;
    font-weight: 700;
    color: #fff;
	}
.submainbox h2 span{
    font-weight: 600;
    display: block;
    font-size:7.0rem;
    font-family: "Poppins", sans-serif;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #fff;
    line-height: 1.3;
    }

@media screen and (max-width:1024px) {
    .submainbox{padding: 100px 0 5%;}
    .submainbox h2 span{font-size:5.0rem;}
}

@media screen and (max-width:767px) {
    .submainbox{padding: 80px 0 30px;}
    .submainbox h2{font-size:1.5rem;}
    .submainbox h2 span{font-size:3.0rem;}
}



/* bread_crumb
--------------------------------------------------*/
.bread_crumb_list {
	padding:5px 0 6px;
	width:100%;
	margin: auto;
	}
ul.bread_crumb {
    text-align:left;
    max-width: calc(1280px + 2%);
    margin: 0 auto;
    padding: 0 1%;
    }
.bread_crumb li {
	display:inline;
	color:rgb(36, 36, 35);
	font-size:1.5rem;
	font-weight:500;
	}
.bread_crumb .material-icons{vertical-align:-0.2em !important;}
.bread_crumb li:after {
    content : '>';
    padding-left:10px;
    margin-right:10px;
	}
.bread_crumb li:last-child:after {content : '';}
.bread_crumb li a {color:rgb(36, 36, 35);text-decoration:underline;}
.bread_crumb li a:hover{text-decoration:none;}
.bread_crumb li.current {}

@media screen and (max-width:767px) {
   .bread_crumb li {font-size:1.2rem;} 
}
/* subcon
---------------------------------------------------------------------------*/
#subcon{
    text-align: left;
    font-size: 1.7rem;
    letter-spacing: .075em;
    line-height:2;
    color:rgb(36, 36, 35);
    }
#subcon section{padding: 80px 0;}
#subcon figure{padding: 0; margin: 0;}
#subcon img{width: auto; max-width: 100%;}
#subcon .kadomaru{border-radius: 20px;}
#subcon .mt20{margin-top: 20px;}
#subcon .mt40{margin-top: 40px;}
#subcon .mt80{margin-top: 80px;}
#subcon .cen{text-align: center;}

#subcon .bg01{background: url(../img/cmn/bg_pt.png)repeat top center;}
#subcon .bg02{background-color: #faf6f2;}

#subcon ul.ullist01{margin:20px 0px;}
#subcon ul.ullist01 li{
    font-size: 1.7rem;
    letter-spacing: .075em;
    line-height: 2;
	margin:0px 0px 0.2em 1em;
	list-style:disc;
	}

#subcon .ttl-01{
    margin:90px 0 25px;
    padding: 0 0 15px 0;
    font-size:3.0rem;
    font-weight:600;
    text-align: left;
    line-height: 1.8;
    position: relative;
    letter-spacing: .075em;
    border-bottom: 1px solid #ddd;
    }
#subcon .privacy_area .ttl-01{font-size:25px;}
#subcon .ttl-01::after {
	position: absolute;
	content: " ";
	border-bottom: solid 4px #e42121;
	bottom: -3px;
	width:15%;
	display: block;
	left: 0;
	}
#subcon .ttl-01 span{
	font-size:1.8rem;
	margin-left:10px;
	display: inline;
	letter-spacing: 0;
    font-family: "Poppins", sans-serif;
    color: #ddd;
    text-transform: uppercase;
    font-weight: 500;
	}
#subcon .ttl-01.ttl_top{margin: 0 0 25px;}

#subcon .ttl-02{
    text-align: center;
    line-height: 1;
    white-space: nowrap;
    font-weight: bold;
    display: block;
    font-size: 1.8rem;
    letter-spacing: .1em;
    margin-bottom: 40px;
    }
#subcon .ttl-02 span{
    letter-spacing: 0.05em;
    display: block;
    font-size: 5.4rem;
    line-height: 1.2;
    white-space: nowrap;
    position: relative;
    font-weight: 500;
    margin-bottom: .1em;
    }
#subcon .txtBox{}
#subcon .txtBox .inner{width: 50%;padding: 10px 0;box-sizing: border-box;margin: 0;}
#subcon .txtBox figure{width: 42%;padding: 10px 0;box-sizing: border-box;}



/* TBL */
#subcon .defTable01,
#subcon .defTable02{
	width:100%;
    margin:0 auto;
	border: none;
    border-collapse: collapse;
	}
#subcon .defTable01 th{
    width:280px;
	padding: 20px 25px;
    margin: 0;
	text-align: left;
	vertical-align:top;
    font-weight: 700;
	font-size: 1.7rem;
    letter-spacing: .075em;
    line-height:2;
    box-sizing: border-box;
    background:#faf6f2;
    border-bottom: 1px solid #ddd;
	}
#subcon .defTable01 td{
    padding: 20px 25px;
    margin: 0;
    text-align: left;
    vertical-align: top;
	font-size: 1.7rem;
    letter-spacing: .075em;
    line-height:2;
    box-sizing: border-box;
    background: #fff;
    border-bottom: 1px solid #ddd;
	}
#subcon .defTable01 td.cen{text-align: center;}
#subcon .defTable01 a{color: #e42121}

#subcon .defTable01 tr:first-child th{border-top: 1px solid #ddd;}
#subcon .defTable01 tr:first-child td{border-top: 1px solid #ddd;}

@media screen and (max-width:1024px) {
    #subcon{font-size: 1.6rem;}
    #subcon ul.ullist01 li{font-size: 1.6rem;}
}

@media screen and (max-width:767px) {
#subcon{
    font-size: 1.5rem;
    letter-spacing: .05em;
    line-height:1.6;
    }
#subcon section{padding: 40px 0;}
#subcon .kadomaru{border-radius: 10px;}
#subcon .mt20{margin-top: 10px;}
#subcon .mt40{margin-top: 20px;}
#subcon .mt80{margin-top: 40px;}

#subcon ul.ullist01{margin:10px 0px;}
#subcon ul.ullist01 li{
    font-size: 1.5rem;
    letter-spacing: .05em;
    line-height: 1.6;
	}

#subcon .ttl-01{
    margin:40px 0 20px;
    padding: 0 0 10px 0;
    font-size:2.0rem;
    line-height: 1.6;
    letter-spacing: .05em;
    }
#subcon .privacy_area .ttl-01{font-size:1.8rem;}

#subcon .ttl-01 span{font-size:1.4rem;}
#subcon .ttl-01.ttl_top{margin: 0 0 20px;}

#subcon .ttl-02{
    font-size: 1.6rem;
    margin-bottom: 40px;
    line-height: 1.8;
    }
#subcon .ttl-02 span{font-size: 3.0rem;letter-spacing: 0}

#subcon .txtBox .inner{width:100%;}
#subcon .txtBox figure{width:100%;}

/* TBL */
#subcon .defTable01 th{
    display: block;
    width:100%;
	padding:15px 15px;
	font-size: 1.5rem;
    letter-spacing: .05em;
    line-height:1.6;
    box-sizing: border-box;
    background:#faf6f2;
    border-bottom: none;
	}
#subcon .defTable01 td{
    display: block;
    width:100%;
    padding: 15px 15px;
	font-size: 1.5rem;
    letter-spacing: .05em;
    line-height:1.6;
    border-bottom: none;
	}

#subcon .defTable01 tr:first-child th{border-top: none;}
#subcon .defTable01 tr:first-child td{border-top: none;}

}


/* about
---------------------------------------------------------------------------*/
#subcon .sub_about_sec01 .inner{
    background: #fff;
    border: 2px solid #ddd;
    padding: 90px 65px 65px;
    border-radius: 20px;
    position: relative;
    }
#subcon .sub_about_sec01 h3{
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    margin: auto;
    }
#subcon .sub_about_sec01 .inner::before{
    position: absolute;
    content: "";
    background: url("/img/top/contents_ill.png")no-repeat;
    background-size: 100%;
    bottom: -30px;
    right: 10px;
    width: 150px;
    height: 250px;
    }
#subcon .sub_about_sec01 h3.ttl-02 span{color: #fff;}
#subcon .sub_about_sec01 .inner p{line-height: 2.2;display: block;padding-bottom: 25px;}

#subcon .sub_about_sec02{
    background: url("/img/about/bg.png")no-repeat center center,#faf6f2
    }
#subcon .sub_about_sec02 ul{
    max-width: 580px;
    margin: auto;
    }
#subcon .sub_about_sec02 ul li{
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 2px dashed #ddd;
    padding-left: 23px;
    }
#subcon .sub_about_sec02 ul li::before{
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    background: #666;
    top: 10px;
    left: 5px;
    border-radius: 100px;
    }
@media screen and (max-width:1024px) {}
@media screen and (max-width:767px) {  
 #subcon .sub_about_sec01 .inner{
    padding: 25px;
    border-radius:10px;
    position: static;
    }
#subcon .sub_about_sec01 .inner::before{
    position: static;
    display: none;
    }
#subcon .sub_about_sec01 h3{
    position: static;
    margin-bottom: 20px;
    }
#subcon .sub_about_sec01 .inner p{line-height: 1.6;}

#subcon .sub_about_sec02 ul li{
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px dashed #666;
    }
#subcon .sub_about_sec02 ul li::before{
    top: 6px;
    }

}



/* feature
---------------------------------------------------------------------------*/
#subcon .sub_feature_sec{}
#subcon .sub_feature_sec .txtBox{position: relative;}
#subcon .sub_feature_sec .txtBox::after{
    position: absolute;
    content: "";
    width: 43%;
    height: 80%;
    top: -20px;
    right: 20px;
    background: url("/img/cmn/bg.png")repeat;
    z-index: -1;
    border-radius: 20px;
    opacity: 0.5
    }
#subcon .sub_feature_sec .mt80:nth-child(2) .txtBox::after,
#subcon .sub_feature_sec .mt80:nth-child(4) .txtBox::after{
    right: auto;
    left: 20px;
    }
#subcon .sub_f_ttl{
    font-size: 2.8rem;
    letter-spacing: .075em;
    margin-bottom: 20px;
    font-weight: bold;
    line-height: 1.6;
    }
#subcon .sub_f_ttl strong{font-weight: bold;}
#subcon .sub_f_ttl span{
    background: #0058a4;
    color: #fff;
    padding: 1px 15px;
    font-size: 2.0rem;
    letter-spacing: 0;
    border-radius: 4px;
    }
#subcon .sub_feature_sec p{line-height: 2;}

@media screen and (max-width:1024px) {
#subcon .sub_feature_sec .txtBox::after{width: 43%;height: 43%;}
#subcon .sub_f_ttl{font-size: 2.2rem;}
}
@media screen and (max-width:767px) {
#subcon .sub_feature_sec .txtBox{position: static;}
#subcon .sub_feature_sec .txtBox::after{
    position: static;
    display: none;
    }

#subcon .sub_f_ttl{
    font-size: 1.8rem;
    letter-spacing: .05em;
    margin-bottom: 10px;
    line-height: 1.8;
    }
#subcon .sub_f_ttl span{
    padding: 1px 10px;
    font-size: 1.5rem;
    }
#subcon .sub_feature_sec p{line-height: 1.8;}

}


/* price
---------------------------------------------------------------------------*/
#subcon .sub_price_sec{}
#subcon .sub_price_sec .ttl-01:first-child{margin-top: 0}


#subcon .defTable02 th{
    vertical-align: middle;
    background:#ffeaea;
    border: 1px solid #f6c3c2;
    font-size: 1.5rem;
    letter-spacing: 0;
    padding: 15px;
    line-height: 1.5;
    width: 65%;
    }
#subcon .defTable02 th strong{
    font-weight: bold;
    font-size: 1.9rem;
    }
#subcon .defTable02 td{
    vertical-align: middle;
    border: 1px solid #ddd;
    font-size: 1.9rem;
    letter-spacing: 0;
    padding: 15px;
    line-height: 1.5;
    text-align: center;
    background: #fff;
    }
@media screen and (max-width:1024px) {}
@media screen and (max-width:767px) {
    
#subcon .defTable02 th{
    display: block;
    width: 100%;
    font-size: 1.4rem;
    line-height: 1.5;
    }
#subcon .defTable02 th strong{
    font-size: 1.6rem;
    }
#subcon .defTable02 td{
    display: block;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: right;
    border-top: none;
    }
}

/* faq
---------------------------------------------------------------------------*/
#subcon .sub_faq_sec dl{
    border: 2px solid #333;
    padding: 40px 3%;
    border-radius:20px;
    margin: 25px 0;
    background: #fff;
    }
#subcon .sub_faq_sec dt{
    font-size: 2.0rem;
    font-weight: bold;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px dashed #333;
    }
#subcon .sub_faq_sec dt::before{
    content: "Q.";
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    padding-right: 5px;
    color: #666;
    }
#subcon .sub_faq_sec dd{font-size: 2.0rem;}
#subcon .sub_faq_sec dd::before{
    content: "A.";
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    padding-right: 5px;
    color: #e42121;
    }
@media screen and (max-width:1024px) {}

@media screen and (max-width:767px) {
    #subcon .sub_faq_sec dl{
    padding: 25px ;
    border-radius:10px;
    margin:15px 0;
    }
#subcon .sub_faq_sec dt{
    font-size: 1.6rem;
    padding-bottom: 10px;
    margin-bottom: 10px;
    }
#subcon .sub_faq_sec dt::before{
    font-size: 2.0rem;
    padding-right: 5px;
    }
#subcon .sub_faq_sec dd{font-size: 1.6rem;}
#subcon .sub_faq_sec dd::before{
    font-size: 2.0rem;
    padding-right: 5px;
    }

}

/* news
---------------------------------------------------------------------------*/
#subcon .news_area article{
	padding: 60px;
	box-sizing: border-box;
	background: #faf6f2;
    border-radius: 20px;
	}
#subcon .news_area article h3.ttl-01{
    margin-top: 0;
    letter-spacing: 0;
    font-size: 2.5rem;
    border-color: #fff;
    }
#subcon .news_area article .data{
	display: block;
	text-align: right;
	color: #e42121;
	margin-bottom: 10px;
	font-size: 1.8rem;
	font-weight: 600;
	}
#subcon .news_area article p{padding: 1em 0 0; text-align: left;}
#subcon .news_area .news_img{
	max-width: 980px;
	overflow: hidden;
	margin:30px auto;
	text-align: center;
	}
#subcon .news_area .cen{margin: auto;}

/*
.pager_wrapper {text-align: center; margin: 40px auto 0;}
.pager_wrapper ul {display: inline-block;overflow: hidden;}
.pager_wrapper ul li{float: left; width: 32px; margin: 5px;}
.pager_wrapper ul li a{
    background: #e42121;
    display: block;
    width: 100%;
    color: #fff;
    font-size:1.6rem;
    padding: 6px 8px;
    border: 2px solid #e42121;
    transition: 0.5s;
    line-height: 1.0;
    border-radius: 100px;
    }
.pager_wrapper ul li a:hover{background: #fff;color: #e42121; text-decoration: none;}
.pager_wrapper ul li.active a{background: #fff;color: #e42121; text-decoration: none;pointer-events: none;}*/

.pagenation__box {text-align: center; margin: 40px auto 0;}
.pagenation__box ul {display: inline-block;overflow: hidden;}
.pagenation__box ul li{float: left; width: 32px; margin: 5px;}
.pagenation__box ul li a,
.pagenation__box ul li span{
    background: #e42121;
    display: block;
    width: 100%;
    color: #fff;
    font-size:1.6rem;
    padding: 6px 8px;
    border: 2px solid #e42121;
    transition: 0.5s;
    line-height: 1.0;
    border-radius: 100px;
    }
.pagenation__box ul li a:hover{background: #fff;color: #e42121; text-decoration: none;}
.pagenation__box ul li.current span{background: #fff;color: #e42121; text-decoration: none;pointer-events: none;}



@media screen and (max-width:1024px) {}
@media screen and (max-width:767px) {
    #subcon .news_area article{
	padding: 25px;
    border-radius: 10px;
	}
#subcon .news_area article h3.ttl-01{
    font-size: 1.8rem;
    }
#subcon .news_area article .data{
	margin-bottom: 10px;
	font-size: 1.5rem;
	}
#subcon .news_area .news_img{
	margin:15px auto;
	}

}


/* contact
---------------------------------------------------------------------------*/

#subcon .defTable01 input[type="text"] {
	border: 2px solid #eee;
	padding: 15px;
	background: #eee;
	width: 100%;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'MS Ｐゴシック', 'MS PGothic', sans-serif;
    border-radius: 2px;
	}
#subcon .defTable01 input[type="text"].years{width: 20%;}
#subcon .defTable01 select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 2px solid #eee;
	padding: 15px;
	width: 100%;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'MS Ｐゴシック', 'MS PGothic', sans-serif;
    border-radius: 2px;
	}
#subcon .defTable01 select optgroup{background: #ddd;}
#subcon .defTable01 textarea{
	border: 2px solid #eee;
	padding: 15px;
	background: #eee;
	width: 100%;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'MS Ｐゴシック', 'MS PGothic', sans-serif;
    border-radius: 2px;
	}
#subcon .defTable01 input[type="text"]::placeholder,
#subcon .defTable01 textarea::placeholder {
    color: #333;
    font-size:1.7rem;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'MS Ｐゴシック', 'MS PGothic', sans-serif;
    }

#subcon .form_btn{text-align: center;}
#subcon .form_btn input{
	background: #e42121;
	border: 1px solid #e42121;
	font-weight: 600;
	color: #fff; 
	padding: 18px 0;
	font-size: 1.7rem;
	letter-spacing: 1px;
	cursor: pointer;
	transition: 0.5s;
	width: 100%;
    max-width: 350px;
-webkit-appearance: none;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'MS Ｐゴシック', 'MS PGothic', sans-serif;
    margin: 10px auto;
    border-radius: 100px;
	}
#subcon .form_btn input:hover{
	background: #fff;
    color: #e42121;
	}
#subcon span.colR{font-style: normal; color: #e42121;}
#subcon .error_messe{font-style: normal; color: #e42121;}


@media screen and (max-width:1024px) {}
@media screen and (max-width:767px) {
    #subcon .form_btn input{
	padding: 10px 0;
	font-size: 1.5rem;
	}
}



/* sitemap
--------------------------------------------------*/
.sitemap-list{
	overflow: hidden;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	justify-content:space-between;
	}
.sitemap-list li{
	width: 32.8%;
	margin-bottom: 15px;
	}

.sitemap-list li a{
    display: block;
    width: 100%;
    background-size: contain;
    text-align: center;
    font-size: 1.7rem;
    padding: 25px 0;
    color: #fff;
    font-weight: 600;
    background-color: #e42121;
    border: solid 1px #e42121;
    transition: 0.7s;
    box-sizing: border-box;
    border-radius: 100px;
    }
.sitemap-list li:hover a,
.sitemap-list li:active a{
	text-decoration: none;
	color: #e42121;
    opacity: 1;
	background: #fff;
	}

@media screen and (max-width:1024px) {}
@media screen and (max-width:767px) {
.sitemap-list li{
	width: 100%;
	}
.sitemap-list li a{
    font-size: 1.6rem;
    padding: 12px 0;
    }

}