@charset "utf-8";

/*=========================

common

=========================*/
.sp { display:none; }
.pc { display:block; }

/*---------------------------------------------
layout
---------------------------------------------*/
body { background-color:#dadada; }
#container { background-color:#dadada; min-width:1080px; }

i.fa,i.fas { width:1.3em; margin:0 auto; text-align:center; }
img.logo { margin:0 2px; text-align:center; }

/*---------------------------------------------
header
---------------------------------------------*/
#header { background-color:#fff; }
#header #header_top { background-color:#efefef; padding:7px 0; text-align:center; }
#header #header_top h1 { color:#333; font-size:85%; margin:0 auto; padding:0 20px; text-align:left; width:980px; }
#header #header_cont { background-color:#fff; letter-spacing:-.40em; margin:0 auto; padding:15px 25px 15px 20px; text-align:center; width:980px; }
#header #header_cont #logo { display:inline-block; letter-spacing:normal; vertical-align:middle; text-align:left; width:50%; }
#header #header_cont #logo img { width:361px; height:41px; }
#header #header_cont .mail_info { display:inline-block; letter-spacing:normal; text-align:right; vertical-align:middle; width:50%; }
#header #header_cont .mail_info a {
background: rgb(255,255,255);
background: -moz-linear-gradient(top, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
background: -webkit-linear-gradient(top, rgb(255,255,255) 0%,rgb(238,238,238) 100%);
background: linear-gradient(to bottom, rgb(255,255,255) 0%,rgb(238,238,238) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
border:1px solid #ccc;
border-radius:4px;
color:#333;
display:inline-block;
font-weight:600;
padding:12px 10px;
}
#header #header_cont .mail_info a:hover {
background: -moz-linear-gradient(top, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
background: -webkit-linear-gradient(top, rgb(238,238,238) 0%,rgb(255,255,255) 100%);
background: linear-gradient(to bottom, rgb(238,238,238) 0%,rgb(255,255,255) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
}
#header #header_cont .mail_info a span { display:inline-block; padding-left:3px; }
#header #header_cont .mail_info a img { width:17px; height:13px; }

/*---------------------------------------------
nav
---------------------------------------------*/
#nav_menu { background-color:#2d67b8; background-image:url(../img/common/bg_dot_pattern.png); background-position:left center; background-repeat:repeat; }
#nav_menu ul { letter-spacing:-.40em; margin:0 auto; text-align:center; width:980px; }
#nav_menu ul li { border-left:1px solid #fff; display:inline-block; letter-spacing:normal; width:25%; }
#nav_menu ul li:nth-child(4) { border-right:1px solid #fff; }
#nav_menu ul li a { background-color:#2d67b8; background-image:url(../img/common/bg_menu.png); background-position:left center; background-repeat:repeat; color:#fff; display:block; font-size:116%; font-weight:600; padding:25px; text-decoration:none; }
#nav_menu ul li a:hover { background-color:#ff9835; }

#nav_menu ul li.current a { background-color:#ff9835; }

/*---------------------------------------------
link_area
---------------------------------------------*/
#link_area { letter-spacing:-.40em; width:100%; }
#link_area #link_area_cont { background-color:#e8e9ec; letter-spacing:-.40em; margin:0 auto;padding:20px 20px 0; text-align:center; width:980px; }
#link_area #link_area_cont #side_menu { display:inline-block; letter-spacing:normal; text-align:left; vertical-align:bottom; width:80%; }
#link_area #link_area_cont #side_menu ul { letter-spacing:-.40em; text-align:left; padding-bottom:18px; }
#link_area #link_area_cont #side_menu ul li { border-right:1px solid #ccc; display:inline-block; letter-spacing:normal; padding:0 15px; width:auto; }
#link_area #link_area_cont #side_menu ul li:first-child { border-left:1px solid #ccc; }
#link_area #link_area_cont #side_menu ul li a { color:#333; padding-bottom:5px; text-decoration:none; }
#link_area #link_area_cont #side_menu ul li a span { display:inline-block; padding-left:5px; }
#link_area #link_area_cont #side_menu ul li.current a { border-bottom:2px solid #ff9835; }

#link_area #link_area_cont #page_top { display:inline-block; letter-spacing:normal; text-align:right; vertical-align:bottom; width:20%; }
#link_area #link_area_cont #page_top a {
background: rgb(255,255,255);
background: -moz-linear-gradient(top, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
background: -webkit-linear-gradient(top, rgb(255,255,255) 0%,rgb(238,238,238) 100%);
background: linear-gradient(to bottom, rgb(255,255,255) 0%,rgb(238,238,238) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
border-top:1px solid #ccc;
border-right:1px solid #ccc;
border-left:1px solid #ccc;
border-radius:4px 4px 0 0;
color:#333;
display:inline-block;
font-size:93%;
font-weight:600;
padding:10px 10px;
}
#link_area #link_area_cont #page_top a:hover {
background: -moz-linear-gradient(top, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
background: -webkit-linear-gradient(top, rgb(238,238,238) 0%,rgb(255,255,255) 100%);
background: linear-gradient(to bottom, rgb(238,238,238) 0%,rgb(255,255,255) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
}
#link_area #link_area_cont #page_top a img { vertical-align:middle; }
#link_area #link_area_cont #page_top a span { vertical-align:middle; padding-left:5px; }

/*---------------------------------------------
footer
---------------------------------------------*/
#footer { background-color:#fff; border-top:1px solid #ccc; width:100%; }
#footer #footer_cont { background-color:#fff; letter-spacing:-.40em; margin:0 auto; text-align:center; padding:25px 15px 45px; width:950px; }
#footer #footer_cont #footer_logo_area { display:inline-block; letter-spacing:normal; text-align:left; vertical-align:top; width:70%; }
#footer #footer_cont #footer_logo_area dl { display:inline-block; margin-right:15px; }
#footer #footer_cont #footer_logo_area dl dt { padding-top:3px; }
#footer #footer_cont #footer_logo_area dl dt img { width:361px; height:41px; }
#footer #footer_cont #footer_logo_area dl dd { font-size:100%; letter-spacing:-.40em; line-height:1.4; margin-top:12px; }
#footer #footer_cont #footer_logo_area dl dd .address { display:inline-block; letter-spacing:normal; vertical-align:top; width:60%; }
#footer #footer_cont #footer_logo_area dl dd .contact { display:inline-block; letter-spacing:normal; margin-top:3px; text-align:right; vertical-align:top; width:40%; }

#footer #footer_cont #footer_logo_area dl dd .contact a {
background: rgb(255,255,255);
background: -moz-linear-gradient(top, rgb(255,255,255) 0%, rgb(238,238,238) 100%);
background: -webkit-linear-gradient(top, rgb(255,255,255) 0%,rgb(238,238,238) 100%);
background: linear-gradient(to bottom, rgb(255,255,255) 0%,rgb(238,238,238) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
border:1px solid #ccc;
border-radius:4px;
color:#333;
display:inline-block;
font-size:72%;
font-weight:600;
padding:8px 5px;
vertical-align:middle;
}
#footer #footer_cont #footer_logo_area dl dd .contact a:hover {
background: -moz-linear-gradient(top, rgb(238,238,238) 0%, rgb(255,255,255) 100%);
background: -webkit-linear-gradient(top, rgb(238,238,238) 0%,rgb(255,255,255) 100%);
background: linear-gradient(to bottom, rgb(238,238,238) 0%,rgb(255,255,255) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
}
#footer #footer_cont #footer_logo_area dl dd .contact a span { display:inline-block; padding-left:3px; }
#footer #footer_cont #footer_logo_area dl dd .contact a img { width:14px; height:10px; vertical-align:middle; }

#footer #footer_cont #footer_logo_area iframe { display:inline-block; vertical-align:top; }
#footer #footer_cont #footer_info_area { display:inline-block; letter-spacing:normal; text-align:right; vertical-align:top; width:30%; }
#footer #footer_cont #footer_info_area dl { display:inline-block; text-align:right; width:290px; }
#footer #footer_cont #footer_info_area dl dt { background-color:#2d67b8; color:#fff; font-size:100%; font-weight:600; padding:5px; text-align:center; }
#footer #footer_cont #footer_info_area dl dd { font-size:108%; margin-top:7px; text-align:left; }
#footer #footer_cont #footer_info_area dl dd p { font-size:85%; margin-top:10px; text-align:left; }

#copyright { background-color:#dadada; padding:0 0 60px; width:100%; }
#copyright p { color:#666; font-size:85%; margin:0 auto; text-align:center; padding:15px 0 0; width:980px; }

/*---------------------------------------------
title
---------------------------------------------*/
h2.title { background-color:#2d67b8; color:#fff; font-size:116%; font-weight:600; margin-bottom:15px; padding:13px 15px; text-align:left; }
h2.title span { padding-left:10px; }

h3.title { background-color:#d8e3f1; border-left:5px solid #2d67b8; color:#2d67b8; font-size:116%; font-weight:600; margin-bottom:15px; padding:13px 10px; text-align:left; }
h3.sub_title { background-color:#f0f1f3; border-left:5px solid #2d67b8; color:#2d67b8; font-size:116%; font-weight:600; margin-bottom:15px; padding:13px 10px; text-align:left; }

h3.title span { display:inline-block; letter-spacing:normal; line-height:1.3; vertical-align:top; }
h3.title span.caption { background-color:#fff; border:1px solid #2d67b8; display:inline; font-size:79%; font-weight:600; margin-right:8px; padding:2px 5px; vertical-align:middle; }
h3.title span.db { display:block; padding-top:5px; }

/*---------------------------------------------
bread_crumb
---------------------------------------------*/
.bread_crumb_list { text-align:center; }
.bread_crumb_list .bread_crumb_list_cont { margin:0 auto; text-align:center; width:980px; }
.bread_crumb_list .bread_crumb_list_cont ol { letter-spacing:-.40em; padding:7px 30px; text-align:left; }
.bread_crumb_list .bread_crumb_list_cont ol li { display:inline-block; font-size:85%; letter-spacing:normal; margin-left:5px; text-align:left; vertical-align:middle; }
.bread_crumb_list .bread_crumb_list_cont ol li:first-child { margin-left:0; }
.bread_crumb_list .bread_crumb_list_cont ol li a { color:#333; }

/*---------------------------------------------
gallery
---------------------------------------------*/
#gallery { background-color:#fff; padding:30px 30px; }

.photo_gallery { letter-spacing:-.40em; text-align:center; }
.photo_gallery figure { display:inline-block; letter-spacing:normal; margin-bottom:15px; vertical-align:top; }

.photo_gallery a { background-color:#ffff; border:1px solid #dfdfdf; display:inline-block; letter-spacing:normal; padding:10px; text-align:left; vertical-align:top; }
.photo_gallery figure:nth-child(odd) { margin-right:16px; }

/*---------------------------------------------
outline
---------------------------------------------*/
#outline { background-color:#fff; padding:30px 30px; }

#outline .cont { margin-bottom:1px; padding:0 15px 15px; }
#outline .cont p { line-height:1.6; margin-top:5px; text-align:left; }
#outline .cont p:first-child { margin-top:0; }

#outline .cont dl { border-top:1px solid #dfdfdf; margin:0; padding:0 0 15px; letter-spacing:-.40em; text-align:left; }
#outline .cont dl:first-child { border-top:none; }
#outline .cont dl dt { display:inline-block; letter-spacing:normal; font-weight:600; line-height:1.6; text-align:right; vertical-align:top; margin-right:25px; padding:15px 0 0; width:7em; }
#outline .cont dl dd { display:inline-block; letter-spacing:normal; line-height:1.6; padding:15px 0 0; text-align:left; vertical-align:top; }

#outline .cont dl:first-child dt,
#outline .cont dl:first-child dd { padding:0; }
#outline .cont ol { padding-left:20px; }
#outline .cont ol li { line-height:1.6; list-style-type:decimal; list-style-position:outside; margin-top:5px; text-align:left; }
#outline .cont ol li:first-child { margin-top:0; }


