@charset "UTF-8";

/*---------- ページ全体の指定 ----------*/

body {
margin:0;
padding:0;
font-size:100%;
color:#3c3c43;
background-color:#fff;
font-family:'Yu Gothic Medium', '游ゴシック Medium', YuGothic, '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', sans-serif;
}


/*---------- リンク設定 ----------*/

a:link {color:#37859a;text-decoration:underline;}
a:visited {color:#37859a;text-decoration:underline;}
a:hover {color:#139eb1;text-decoration:none;}
a{-webkit-transition:0.3s ease-in-out;-moz-transition:0.3s ease-in-out;-o-transition:0.3s ease-in-out;transition:0.3s ease-in-out;}
a img {border-style:none;}
img {vertical-align:bottom;}
a:hover img{opacity:0.6;filter:alpha(opacity=60);}
a img {border-style:none;-webkit-transition:all .3s;transition:all .3s;}


/*---------- ベーステキストの指定 ----------*/

p {
font-size:100%;
line-height:180%;
}
/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
p {
font-size:18px;
letter-spacing:1px;
}
} /* ▲PCメディアクエリ終了▲ */


/*---------- 見出し ----------*/

h1{}
h2{}
h3{}
h4{}


/*---------- PC・スマホの非表示指定 ----------*/

@media screen and (max-width:768px){.spnone{display:none;}}
@media screen and (min-width:769px){.pcnone{display:none;}}



/*------------------------------ ヘッド部分 ------------------------------*/


.top_head{
margin:0;
padding:10px 0;
font-size:75%;
line-height:150%;
text-align:center;
color:#777;
border-bottom:1px solid #dedede;
}
.top_title{
margin:0;
padding:15px 0;
font-size:150%;
font-weight:bold;
line-height:150%;
text-align:center;
font-family: Arial, Helvetica, "sans-serif";
border-bottom:1px solid #dedede;
}
.top_txt{
margin:0;
padding:10px 0;
font-size:75%;
line-height:150%;
text-align:center;
background-color:#f5f5f5;
}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.top_head{
padding:15px 0;
font-size:12px;
}
.top_title{font-size:28px;}
.top_txt{
padding:15px 0;
font-size:14px;
}
} /* ▲PCメディアクエリ終了▲ */



/*------------------------------ メインビジュアル部分 ------------------------------*/

.main_visual{
margin:0 auto 45px auto;
padding:0;
}
.main_visual2{
margin:0 auto 45px auto;
padding:0;
}

.main_visual3{
margin:0 auto 45px auto;
padding:0;
}

.main_pict{
margin:0;
padding:20px 0 0 0;
}
.main_pict img{width:100%;}

.main_pict1{
margin:0;
padding:10px 0 0 0;
}

.main_txt{
margin:0;
padding:30px 20px 0 20px;
}
.main_txt_inner{
margin:0;
padding:0;
}
/* .main_txt_innerの役割：.main_txtの中に複数のdivを入れるため、縦中央揃え用のdivを用意 */
 .main_tab{
margin:0;
padding:3px 0 20px 0;
font-size:75%;
line-height:100%;
color:#7f0019;
}
.main_tab span{
padding:3px 10px 2px 10px;
color:#7f0019;
border:solid 1px #7f0019;
}
.main_subcopy{
margin:0;
padding:0;
font-size:120%;
font-weight:900;
line-height:100%;
font-family: "Noto Sans Japanese";
}
.main_subcopy2{
margin:0;
padding:20px;
text-align:center;
font-size:110%;
font-weight:600;
line-height:150%;
font-family: "Noto Sans Japanese";
}
.main_copy{
margin:0 0 25px 0;
padding:0 0 20px 0;
font-size:200%;
font-weight:600;
line-height:150%;
font-family: "Noto Sans Japanese";
border-bottom:1px solid #dedede;
}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.main_visual{
width:1200px;
margin:60px auto 90px auto;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:-o-flex;
display:flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
justify-content:space-between;
}
.main_visual2{
width:1200px;
margin:30px auto 50px auto;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:-o-flex;
display:flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
justify-content:space-between;
}

.main_visual3{
width:1200px;
margin:0 auto 90px auto;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:-o-flex;
display:flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
justify-content:space-between;
}

.main_pict{width:48%;}
.main_pict1{width:48%;}


.main_txt{
width:48%;
padding:0;
display:flex; /* 縦中央揃え用 */
justify-content:center; /* 縦中央揃え用 */
align-items:center; /* 縦中央揃え用 */
}
.main_tab{font-size:12px;}
.main_subcopy{font-size:24px;}
.main_subcopy2{font-size:20px;}
.main_copy{
margin:0 0 35px 0;
padding:0 0 30px 0;
font-size:38px;
}
} /* ▲PCメディアクエリ終了▲ */



/*------------------------------ 共通部分 ------------------------------*/


.subhead{
margin:0;
padding:0;
font-size:150%;
font-weight:bold;
line-height:150%;
text-align:center;
}


/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.subhead{font-size:28px;}
} /* ▲PCメディアクエリ終了▲ */


/*------------------------------ about us ------------------------------*/

.about_txt{
margin:20px 20px 60px 20px;
padding:1px 25px;
position:relative;
-webkit-box-sizing:border-box;
box-sizing:border-box;
}
.about_txt:before, .about_txt:after { 
content:'';
width:15px;
height:100%;
position:absolute;
}
.about_txt:before {
border-left:solid 1px #3c3c43;
border-top:solid 1px #3c3c43;
border-bottom:solid 1px #3c3c43;
top:0;
left:0;
}
.about_txt:after {
content: '';
border-top:solid 1px #3c3c43;
border-right:solid 1px #3c3c43;
border-bottom:solid 1px #3c3c43;
top:0;
right:0;
}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.about_txt{
width:768px;
margin:30px auto 90px auto;
padding:5px 45px;
}
} /* ▲PCメディアクエリ終了▲ */



/*------------------------------ 地図・動画 ------------------------------*/

.information_box{
margin:20px 20px 60px 20px;
padding:0;
}
.information{
margin:0 0 20px 0;
padding:0;
}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.information_box{
width:1080px;
margin:30px auto 90px auto;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:-o-flex;
display:flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
justify-content:space-between;
}
.information{width:48%;margin:0;}
} /* ▲PCメディアクエリ終了▲ */


/* googlemapやyoutubeなどの動画の埋め込み */
.iframe_box{
width:100%;
height:0;
margin:0;
padding:56.25% 0 0 0;
position:relative;
}
.iframe_box iframe{
width:100%;
height:100%;
top:0;
left:0;
position:absolute;
}



/*------------------------------ 会社概要 ------------------------------*/


.company_box{
margin:20px 20px 60px 20px;
padding:15px 20px 15px 20px;
-webkit-box-sizing:border-box;
box-sizing:border-box;
border:1px solid #dedede;
}
table.info{
width:100%;
border-collapse:separate;
margin:0;
}
table.info th{
padding:0 0 5px 0;
font-size:100%;
line-height:150%;
text-align:left; /* thのデフォルトはセンター揃えのため */
border-bottom:solid 1px #666;
display:block;
}
table.info td{
padding:10px 0 15px 0;
font-size:100%;
line-height:150%;
display:block;
}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.company_box{
width:768px;
margin:30px auto 90px auto;
padding:30px 75px 60px 75px;
}
table.info th{
width:180px;
padding:10px 0;
font-size:16px;
letter-spacing:1px;
display:table-cell;
}
table.info td{
padding:10px;
font-size:16px;
letter-spacing:1px;
border-bottom:dotted 1px #ccc;
display:table-cell;
}
} /* ▲PCメディアクエリ終了▲ */




/*------------------------------ ボタン ------------------------------*/

.device{
margin:0;
padding:0 30px;
text-align:center;
}
.device a:link {color:#fff;text-decoration:none;}
.device a:visited {color:#fff;text-decoration:none;}
.device a:hover {color:#7f0019;text-decoration:none;}
.btn {
width:100%;
margin:0 auto 0 auto;
padding:25px 0;
font-size:120%;
font-weight:bold;
display:block;
background:#7f0019;
border:solid 1px #7f0019;
}
.btn:hover {
background:#fff;
-webkit-transition:0.3s ease-in-out;
-moz-transition:0.3s ease-in-out;
-o-transition:0.3s ease-in-out;
transition:0.3s ease-in-out;
}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
.device{padding:0;}
.btn {
width:480px;
font-size:20px;
}
} /* ▲PCメディアクエリ終了▲ */




/*------------------------------ 特定章取引 ------------------------------*/

.page_title{
margin:45px 0;
padding:0;
font-size:150%;
font-weight:bold;
line-height:150%;
text-align:center;
}
.contents_sub{
margin:0 30px 90px 30px;
padding:0;
}
table.spec{
width:100%;
border-collapse:collapse;
margin:0;
}
table.spec th{
font-size:100%;
line-height:180%;
padding:0 0 5px 0;
border-bottom:solid 1px #999;
text-align:left;
display:block;
}
table.spec td{
font-size:100%;
line-height:180%;
padding:15px 0 20px 15px;
display:block;
}
@media screen and (min-width:769px){
.page_title{font-size:24px;}
.contents_sub{width:640px;margin:0 auto 90px auto;}
.contents_sub p{font-size:14px;}
table.spec th{
width:180px;
font-size:16px;
padding:20px 15px 15px 0;
display:table-cell;
}
table.spec td{
font-size:16px;
padding:20px 15px 15px 15px;
border-bottom:dotted 1px #999;
display:table-cell;
}
}














/*------------------------------ フッター ------------------------------*/

#footer{
margin:60px 0 0 0;
padding:30px 0;
font-size:75%;
line-height:150%;
text-align:center;
background:#f7f7f7;
font-family: 'Roboto Condensed', sans-serif;
}
#footer a:link {color:#3c3c43;text-decoration:underline;}
#footer a:visited {color:#3c3c43;text-decoration:underline;}
#footer a:hover {color:#3c3c43;text-decoration:none;}

/* ▼PCメディアクエリ */
@media screen and (min-width:769px){
#footer{
margin:90px 0 0 0;
font-size:12px;
}
} /* ▲PCメディアクエリ終了▲ */



/*---------- 文字装飾 ----------*/

.bold{font-weight:bold;}
.ul{text-decoration:underline;}
.red {font-weight:bold;color:#c30d23;}
.through{text-decoration:line-through;}
.ym{font-weight:bold;background:linear-gradient(transparent 60%, #ffe24d 60%);}
.caption{font-size:75%;color:#666666;font-weight:normal;line-height:180%;}


/*---------- 文字位置 ----------*/

.center{text-align:center;}
.right{text-align:right;}