@charset "utf-8";
/* ------------------------------------------------------------ fv */
body { font-family: "Lato","游ゴシック体","Noto Sans Japanese","ヒラギノ角ゴ Pro w3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", "Arial", sans-serif}

.sp { display: none; }
.pc { display: block; }
#fv { margin: 0 auto; width: 1000px; padding: 0 0 10px; }

#about { padding: 0 0 60px; }
#about .about { width: 1000px; margin: 0 auto; text-align: center; }
#about .about h2 { font-size: 36px; color: #0f68ba; }
#about .about h2 span { display: block; color: black; font-size: 16px; padding: 0 0 40px 0; }
#about .about p { font-size: 16px; }

#message { background: #f4f4f4; }
#message .message { width: 1000px; margin: 0 auto; padding: 85px 0 115px; }
#message .message h2 { text-align: center; font-size: 36px; color: #0f68ba; }
#message .message span { display: block; color: black; font-size: 16px; padding: 0 0 85px ; }
#message .message .comment { width: 710px; margin: 0 auto; padding: 0 0 60px; }
#message .message .profile { text-align: center; }

#idea { padding: 75px 0 110px; }
#idea .idea { width: 1000px; margin: 0 auto; }
#idea .idea h2 { text-align: center; font-size: 36px; color: #0f68ba; }
#idea .idea span { display: block; color: black; font-size: 16px; padding: 0 0 30px; }
#idea .idea .cycle { background: url(../images/common/cycle_01.gif) no-repeat center center; font-size: 16px; padding: 146px 0; }
#idea .idea .cycle ul.pc { width: 620px; margin: 0 auto; }
#idea .idea .cycle ul.pc li { padding: 15px 0; }
#idea .idea .sp { display: none; }

#policy { background: #f4f4f4; padding: 60px 0 75px; }
#policy .policy { width: 1000px; margin: 0 auto; }
#policy .policy h2 { text-align: center; font-size: 36px; color: #0f68ba; }
#policy .policy span { display: block; color: black; font-size: 16px; padding: 0 0 10px; }
#policy .policy tr th { width: 240px; background: #0064b0; color: #fff; font-size: 26px; padding: 36px 0; }
#policy .policy tr td { background: #fff; font-size: 16px; padding: 0 25px 0;}
#policy .policy table { border-spacing : 0 25px; border-collapse : separate; }

#history { width: 1000px; margin: 0 auto; padding: 70px 0 80px; }
#history h2 { text-align: center; font-size: 36px; color: #0f68ba; }
#history span { display: block; color: black; font-size: 16px; padding: 0 0 60px; }
#history tr th { text-align: left; font-size: 16px; font-weight: bold; padding: 8px 0 0; display: flex;line-height: 1;}
#history tr td { font-size: 16px; padding: 0 0 8px 65px; line-height: 1.8;}

#info { background: #f4f4f4; padding: 85px 0 100px; }
#info .info { width: 990px; margin: 0 auto; padding: 0 0 0 10px; }
#info .info h2 { text-align: center; font-size: 36px; color: #0f68ba; }
#info .info span { display: block; color: black; font-size: 16px; padding: 0 0 60px; }
#info .info tr { font-size: 14px; text-align: left; }
#info .info th { width: 123px; padding: 16px 0 0 20px; vertical-align: top; text-align: left; }
#info .info td { padding: 16px 0 16px 20px; }
#info .info table { width: 1000px; }
#info .info .bg { background: white; }
#info .info .line td {}

#access iframe { width: 100%; }
#access .access h2 { text-align: center; font-size: 36px; color: #0f68ba; padding: 150px 0 0; }
#access .access .hr span { display: block; color: black; font-size: 16px; padding: 0 0 40px; }
#access .access .ancher { text-align: center; width: 160px; margin: 0 auto; padding: 30px 0 75px; }
#access .access .ancher a { display: block; background: url(../images/common/common-05.gif) no-repeat left center; line-height: 100%}
#access .access .ancher span { border-bottom: black 1px solid; font-size: 14px; }

/* ------------------------------------------------------------------------------------------------ mobile */
@media only screen and (max-width:640px){

.sp { display: block; }
.pc { display: none; }

#header .logo a,
#header .contact dl,
#header .contact a,
#message .message .photo,
#message .message .comment,
#box .contact .tel,
#box .contact .mall { float: none; }

#about { padding: 20px 0 30px; }
#about .about { width: 94%; height: auto; }
#about .about h2 { font-size: 24px; }
#about .about h2 span { font-size: 14px; padding: 0 0 20px; }
#about .about p { text-align: left; }
#about .about p .sp { display: none}

#message .message { width: 94%; padding: 40px 0 30px; }
#message .message h2 { font-size: 24px; }
#message .message span { padding: 0 0 25px; font-size: 14px; }
#message .message .comment { padding: 0 0 30px; width: 100%; }
#message .message .profile img { width: 70%; height: auto; }

#idea { padding: 30px 0 15px; }
#idea .idea { width: 94%; }
#idea .idea h2 { font-size: 24px; }
#idea .idea span { font-size: 14px; padding: 0 0 20px; }
#idea .idea th { display: block; width: 100%; text-align: center; }
#idea .idea td { display: block; font-size: 14px; padding: 0 0 20px; }
#idea .idea .cycle { padding: 0; }
#idea .idea .cycle ul.pc { display: none; }
#idea .idea .sp { display: block; }
#idea .idea .sp img { width: 100%; height: auto; }
#idea .idea .sp li { padding: 15px 0; }

#policy { background: #f4f4f4; padding: 30px 0; }
#policy .policy { width: 94%; }
#policy .policy h2 { font-size: 24px; }
#policy .policy span { font-size: 14px; padding: 0 0 10px; }
#policy .policy tr th { width: 100%; display: block; background: #0064b0; color: #fff; font-size: 16px; padding: 9px 0; }
#policy .policy tr td { width: 94%; display: block; background: #fff; font-size: 14px; padding: 10px 3%; }

#history { width: 94%; padding: 30px 0; }
#history h2 { font-size: 24px; }
#history span { font-size: 14px; padding: 0 0 10px; }
#history tr th { display: block; width: 94%; font-size: 14px; padding: 0 3%; line-height: inherit;}
#history tr td { display: block; width: 94%; font-size: 14px; padding: 0 3% 8px;}

#info { padding: 30px 0 40px; }
#info .info { width: 94%; padding: 0; }
#info .info table { width: 100%; }
#info .info h2 { font-size: 24px; }
#info .info span { padding: 0 0 20px; font-size: 14px; }
#info .info .line th { display: block; width: 100%; line-height: 28px; background: #f4f4f4; padding: 10px 0; text-align: left;}
#info .info .line td { display: block; width: 97%; line-height: 28px; background: #fff; padding: 10px 2%; font-size: 14px; }

#access .access h2 { padding: 30px 0 0; font-size: 24px; }
#access .access span { font-size: 14px; }
#access .access iframe { width: 100%; height: 300px; }
#access .access .ancher { padding: 20px 0; }

}