@charset "utf-8";

/* ==================================================
Common CSS
================================================== */

@media(min-width:960px){

/*STYLE*/
.sp {
display:none;
}

p {
font-size:1rem;
line-height:150%;
letter-spacing:1px;
}

img:not(.orisize) {
width:100%;
height:auto;
}


/*COMMON*/
header {
background:#004ea2;
}

header .header_area {
width:1000px;
margin:auto;
display:flex;
justify-content:space-between;
align-items:center;
padding:5px 0;
}

h1 {
font-size:70%;
color:#fff;
font-weight:normal;
}

.icons a {
color:#fff;
font-weight:normal;
padding-left:5px;
font-size:120%;
}


/*GROBAL*/
#grobal {
border-bottom:#e1e1e1 1px dotted;
}

#grobal .nav_btn {
display:none;
}

#grobal .grobal_navs {
margin:auto;
display:flex;
justify-content:center;
align-items:center;
}

#grobal .grobal_navs nav {
border-left:#e1e1e1 1px dotted;
}

#grobal .grobal_navs nav:last-child {
border-right:#e1e1e1 1px dotted;
}

#grobal .grobal_navs nav a {
text-decoration:none;
font-weight:normal;
color:#004ea2;
display:block;
padding:10px 20px;
font-size:90%;
text-align:center;
}

#grobal .grobal_navs nav a:hover {
background:#fafafa;
}


/*TITLE*/
.title {
background:linear-gradient(#fcfcfc,#eaeaea);
margin-bottom:12px;
}

.title .title_area {
width:1000px;
margin:auto;
display:flex;
align-items:center;
justify-content:space-between;
border-bottom:#e1e1e1 1px solid;
}

.title .title_area .logo {
width:320px;
}

.title .title_area .right_cts {
display:flex;
padding-top:15px;
}

.title .title_area .right_cts .goto {
width:115px;
}

.title .title_area .right_cts .party_logo {
width:90px;
}

.bread {
width:1000px;
margin:0 auto 50px;
font-size:70%;
color:#969696;
text-align:right;
}

.title .title_area.under {
display:none;
}

.title .title_area.under .logo {
width:250px;
}

.title .title_area.under .right_cts .goto {
width:115px;
}

.title .title_area.under .right_cts .party_logo {
width:90px;
}


/*TOP_COMMON*/
.cts {
width:1000px;
margin:auto;
}

.cate {
text-align:center;
}

.cate .cate_title {
font-size:250%;
color:#004ea2;
padding-bottom:7px;
font-weight:bold;
}

.cate .cate_title span {
padding:0 10px 5px;
}

.cate .cate_sub {
padding-bottom:30px;
font-size:80%;
}

.cate .cate_copy {
padding-bottom:20px;
}


/*TOP*/
.container {
width:1000px;
margin:auto;
display:flex;
justify-content:space-between;
padding-bottom:70px;
}

.container .container_left {
width:650px;
}

.container .container_right {
width:300px;
/*height:750px;*/
overflow:hidden;
}


.intro {
/*background:#faeb96;*/
padding:0 0 60px;
}

.intro .introductions {
margin:auto;
display:flex;
justify-content:space-between;
}

.intro .introductions .introduction {
width:150px;
border:#ececec 1px solid;
margin:0;
background:linear-gradient(#fff,#fafafa);
}

.intro .introductions .introduction a {
display:block;
text-decoration:none;
}

.intro .introductions .introduction a:hover {
opacity:0.8;
}

.intro .introductions .introduction .photo {
}

.intro .introductions .introduction .intro_data {
}

.intro .introductions .introduction .intro_data .intro_title {
text-align:center;
font-size:90%;
font-weight:bold;
padding:13px 10px 7px;
color:#004ea2;
height:80px;
display:flex;
justify-content:center;
align-items:center;
}

.intro .introductions .introduction .intro_data .copy {
width:80%;
margin:auto;
font-size:70%;
color:#323232;
padding-bottom:15px;
}

.flyer_title {
width:100%;
display:flex;
justify-content:center;
align-items:center;
padding-bottom:30px;
position:relative;
}

.flyer_title .deco {
width:100%;
height:1px;
background:#004ea2;
}

.flyer_title p {
color:#004ea2;
font-size:110%;
font-weight:bold;
position:absolute;
background:#fff;
padding:0 10px;
}

.flyers {
display:flex;
justify-content:space-between;
}

.flyers .flyer:first-child {
width:360px;
}

.flyers .flyer:last-child {
width:260px;
}

.flyers .flyer .cap {
font-size:80%;
margin-top:10px;
display:none;
}

.flyers .flyer a:hover {
opacity:0.7;
}

.flyers .flyer img {
border:#e1e1e1 1px solid;
}

.message {
padding:0 0 70px;
}

.message .cate {
padding-bottom:15px;
margin-bottom:15px;
text-align:center;
}

.message .cate .cate_title {
font-size:200%;
border-bottom:#004ea2 1px solid;
display:inline-block;
}

.message .movie_subtitle {
font-size:180%;
}

.message .cts {
}

.message .cts .navs {
width:1000px;
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
}

.message .cts .navs nav {
width:184px;
margin:0 10px 20px;
text-align:center;
}

.message .cts .navs nav:nth-child(n+6){
margin-bottom:0;
}

.message .cts .navs nav a {
text-decoration:none;
background:#eaf4f9;
color:#004ea2;
padding:15px 15px 10px;
display:block;
border:#004ea2 1px dotted;
border-radius:10px;
}

.message .cts .navs nav a:hover {
opacity:0.8;
}

.message .cts .navs nav .icon {
width:70px;
margin:0 auto 15px;
}

.message .cts .navs nav .target {
font-size:80%;
}

.message .cts .navs nav .target .area {
font-size:150%;
}

#localTop {
padding-bottom:70px;
}

#localTop .cate {
padding-bottom:15px;
margin-bottom:15px;
text-align:center;
}

#localTop .cate .cate_title {
font-size:200%;
border-bottom:#004ea2 1px solid;
display:inline-block;
}

#localTop .cts .navs {
width:1000px;
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
}

#localTop .cts .navs nav {
margin:0 10px;
text-align:center;
}

#localTop .cts .navs nav a {
text-decoration:none;
background:#eaf4f9;
color:#004ea2;
padding:15px;
display:block;
border:#004ea2 1px dotted;
border-radius:10px;
}

#localTop .cts .navs nav a:hover {
opacity:0.8;
}

#localTop .cts .navs nav .icon {
width:70px;
margin:0 auto 15px;
}

#localTop .cts .navs nav .target {
font-size:80%;
}

#localTop .cts .navs nav .target .area {
font-size:150%;
}






.information {
}

.information .more {
}

.information .more a {
display:block;
background:#004ea2;
border-radius:30px;
padding:10px;
color:#fff;
text-decoration:none;
text-align:center;
font-size:90%;
width:160px;
margin:auto;
}

.information .more a:hover {
opacity:0.8;
}

.information .more a i {
padding-left:7px;
}

.mail_magazine_banner {
}

.mail_magazine_banner a:hover {
opacity:0.7;
}

.mail_magazine {
width:650px;
background:url("../img/bg.png");
padding:40px 50px;
text-align:center;
}

.mail_magazine .subcopy {
color:#004ea2;
font-weight:bold;
}

.mail_magazine .maincopy {
color:#004ea2;
font-weight:bold;
font-size:180%;
}

.mail_magazine .ex {
padding-bottom:10px;
}

.mail_magazine form .formstyle {
width:400px;
padding:10px 20px;
font-size:100%;
color:#323232;
margin-bottom:10px;
}

.mail_magazine form .regist {
background:#004ea2;
color:#fff;
padding:8px 15px;
border-radius:10px;
margin-right:5px;
}

.mail_magazine form .cancel {
background:#969696;
color:#fff;
padding:8px 15px;
border-radius:10px;
}

/*FACEBOOK*/
.fb-container {
width:300px;
max-width:500px;
}

.cts_flex {
width:1000px;
margin:auto;
display:flex;
justify-content:space-between;
align-items:flex-start;
}



/*ANNOUNCE*/
.announce {
width:800px;
margin:0 auto 70px;
border:#b40000 1px solid;
padding:15px 25px;
}

.announce div {
font-size:1rem;
line-height:150%;
letter-spacing:1px;
}

.announce .announce_title {
font-size:110%;
font-weight:bold;
color:#b40000;
text-align:center;
padding-bottom:7px;
}

.announce .item {
font-weight:bold;
}

.announce .detail {
}



/*SNS*/
.facebook {
width:110px;
position:fixed;
top:165px;
right:0;
z-index:99;
display:none;
}

.line {
width:110px;
position:fixed;
top:210px;
right:0;
z-index:99;
}

.facebook a:hover , .line a:hover {
opacity:0.8;
}

.sns {
-webkit-animation:sns 1s ease;
animation:sns 1s ease;
}

@keyframes sns {
0%{transform:translateX(100%);}
100%{transform:translateX(0);}
}

.sns:hover {
opacity:0.7;
}

.btn_youtube {
width:90px;
position:fixed;
top:230px;
right:0;
z-index:99;
background:#ea3223;
}

.btn_mail_magazine {
width:90px;
position:fixed;
top:330px;
right:0;
z-index:99;
background:#004ea2;
}





/*INFORMATION*/
.topics {
width:1000px;
margin:auto;
}

.topics .topic {
border:#e1e1e1 1px dotted;
background:#fafafa;
margin-bottom:15px;
}

.topics .topic a {
display:block;
text-decoration:none;
}

.topics .topic a:hover {
opacity:0.8;
}

.topics .topic .topic_cts {
padding:20px;
display:flex;
justify-content:space-between;
}

.topics .topic .topic_cts .photo {
width:160px;
}

.topics .topic .topic_cts .data {
width:780px;
}

.topics .topic .topic_cts .data .date {
color:#787878;
font-size:80%;
}

.topics .topic .topic_cts .data .item {
font-weight:bold;
color:#004ea2;
padding-bottom:10px;
}

.topics .topic .topic_cts .data .ex {
color:#323232;
font-size:90%;
}

.topics .pagenation {
display:flex;
justify-content:center;
padding-bottom:100px;
}

.topics .pagenation nav {
margin:0 3px;
}

.topics .pagenation nav a {
display:block;
font-size:80%;
color:#004ea2;
text-decoration:none;
border:#004ea2 1px dotted;
padding:5px 10px;
border-radius:6px;
}

.topics .pagenation nav a:hover {
opacity:0.8;
}

.topics .pagenation .now a {
color:#ccc;
border:#ccc 1px dotted;
background:#fafafa;
}

.topics .detail {
border:#e1e1e1 1px dotted;
background:#fafafa;
padding:70px 100px;
margin-bottom:30px;
}

.topics .detail .date {
text-align:center;
font-size:110%;
padding-bottom:10px;
}

.topics .detail .date span {
border-bottom:#ccc 1px solid;
padding:0 5px 5px;
}

.topics .detail .item {
font-size:200%;
text-align:center;
font-weight:bold;
padding-bottom:20px;
color:#004ea2;
}

.topics .detail .photo {
max-width:80%;
margin:0 auto 30px;
text-align:center;
}

.topics .detail .photo-text {
padding-bottom:30px;
}

.topics .detail .ex {
padding-bottom:70px;
}

.topics .detail .backbtn {
padding-top:100px;
}

.topics .detail .backbtn a {
background:#fff;
}

.topics .detail .backbtn a:hover {
background:#f3f3f3;
}

.topics .detail .pdf {
font-size:110%;
padding-bottom:10px;
}

.topics .detail .pdf .icon {
padding-right:10px;
font-size:150%;
}

.topics .detail .pdf a {
font-weight:bold;
display:flex;
align-items:center;
}

.topics .detail .pdf a:hover {
opacity:0.8;
}



/*LINKS*/
#links {
width:1000px;
margin:100px auto 15px;
}

#links .navs {
display:flex;
justify-content:center;
align-items:center;
}

#links .navs nav {
padding-left:10px;
}

#links .navs nav:before {
content:"|";
color:#e1e1e1;
padding-right:10px;
}

#links .navs nav:first-child:before {
content:"";
}

#links .navs nav a {
text-decoration:none;
font-weight:normal;
color:#004ea2;
font-size:80%;
}

#links .navs nav a:hover {
text-decoration:underline;
opacity:0.8;
}


/*PAGES COMMON*/
.pagetop {
text-align:center;
}

.pagetop .page_title {
font-size:250%;
color:#004ea2;
padding-bottom:35px;
font-weight:bold;
}

.pagetop .page_title span {
padding:0 10px 5px;
}

.pagetop .page_sub {
padding-bottom:50px;
font-size:90%;
}

h2 {
color:#004ea2;
border-top:#004ea2 1px solid;
border-bottom:#004ea2 1px solid;
padding:10px 10px;
margin-bottom:15px;
font-size:110%;
}

.ex {
padding-bottom:15px;
}

.backbtn {
}

.backbtn a {
border:#004ea2 1px dotted;
display:block;
width:160px;
font-size:80%;
margin:auto;
padding:12px 20px;
color:#004ea2;
border-radius:10px;
text-decoration:none;
text-align:center;
}

.backbtn a:hover {
background:#f2f6fa;
}

.iconl {
padding-right:7px;
}

.iconr {
padding-left:7px;
}


/*PROFILE*/
#profile section {
padding-bottom:100px;
}

#profile #biography {
display:flex;
justify-content:space-between;
}

#profile #biography .photo {
width:320px;
}

#profile #biography .biography {
width:650px;
}

#profile #biography .biography aside {
background:#f2f6fa;
padding:25px 30px;
margin-bottom:15px;
}

#profile #biography .biography aside p {
font-size:90%;
}

#profile #biography .biography aside .item {
font-weight:bold;
color:#004ea2;
border-bottom:#c8c8c8 1px dashed;
padding-bottom:5px;
margin-bottom:10px;
}

#profile #biography .biography aside .details {
display:flex;
justify-content:space-between;
align-items:center;
}

#profile #biography .biography aside .details .detail {
width:420px;
}

#profile #biography .biography aside .details .detail .flexline {
display:flex;
justify-content:space-between;
border-bottom:#c8c8c8 1px dashed;
padding-bottom:10px;
margin-bottom:10px;
}

#profile #biography .biography aside .details .detail .flexline:last-child {
margin-bottom:0;
}

#profile #biography .biography aside .details .detail .left {
width:100px;
}

#profile #biography .biography aside .details .detail .right {
width:300px;
}

#profile #biography .biography aside .details .sub_photo {
width:150px;
}

#profile #work {
display:flex;
justify-content:space-between;
flex-direction:row-reverse;
}

#profile #work .photo {
width:150px;
}

#profile #work .details {
width:820px;
}

#profile #work .details .detail {
background:#f2f6fa;
padding:12px 20px;
margin-bottom:10px;
display:flex;
}

#profile #work .details .detail:last-child {
margin:0;
}

#profile #work .details .detail span:first-child {
padding-right:15px;
}

#profile #activity {
display:flex;
justify-content:space-between;
}

#profile #activity .photo {
width:320px;
}

#profile #activity .details {
width:650px;
}

#profile #activity .details .detail {
background:#f2f6fa;
padding:12px 20px;
margin-bottom:10px;
display:flex;
}

#profile #activity .details .detail:last-child {
margin:0;
}

.profile_pdfs {
text-align:center;
padding-bottom:50px;
display:none;
}

.profile_pdfs .profile_pdf {
display:inline-block;
}

.profile_pdfs .profile_pdf a {
display:flex;
align-items:center;
background:#f5e100;
color:#004ea2;
padding:15px 30px;
border-radius:10vw;
}

.profile_pdfs .profile_pdf a i {
font-size:150%;
padding-right:10px;
}

.profile_pdfs .profile_pdf a p {
font-weight:bold;
}

.profile_pdfs .profile_pdf a:hover {
opacity:0.7;
}

.profile_banners {
width:350px;
margin:0 auto 45px;
}

.profile_banners img {
border:#004ea2 1px solid;
}

.profile_banners:hover {
opacity:0.7;
}

.profile_banners .arrows {
text-align:center;
padding-top:10px;
color:#ed3023;
font-weight:bold;
-webkit-animation:banner 1s infinite ease alternate;
animation:banner 1s infinite ease alternate;
}

@keyframes banner {
0%{transform:scale(1);}
100%{transform:scale(1.05);}
}



/*POLICY*/
#policy {
}

#policy section {
background:#f2f6fa;
padding:40px 40px;
margin-bottom:25px;
display:flex;
justify-content:space-between;
}

#policy section:nth-child(even) {
flex-direction:row-reverse;
}

#policy section:nth-child(5) .photo {
width:190px;
}

#policy section:nth-child(5) .details {
width:700px;
}

#policy .photo {
width:280px;
}

#policy .details {
width:610px;
}

#policy .details .policy {
font-size:135%;
color:#004ea2;
font-weight:bold;
padding-bottom:10px;
}

#policy .another_links {
text-align:center;
padding-bottom:100px;
display:flex;
justify-content:center;
}

#policy .another_links .another_btn {
}

#policy .another_links .another_btn:first-child {
margin-right:15px;
}

#policy .another_links .another_btn a {
display:block;
padding:15px 25px;
background:#004ea2;
color:#fff;
text-decoration:none;
border-radius:10px;
}
#policy .another_links .another_btn a:hover {
opacity:0.8;
}



/*LOCAL*/
#local {
}

#local .policies {
}

#local .title_list {
margin-bottom:50px;
}

#local .title_list .list_title {
font-weight:bold;
margin-bottom:10px;
border-left:#004ea2 4px solid;
padding:3px 0 3px 10px;
}

#local .title_list .lists {
display:flex;
flex-wrap:wrap;
}

#local .title_list .lists a {
border:#004ea2 1px dotted;
padding:10px 15px;
margin:0 1.25% 10px 0;
width:19%;
border-radius:10px;
display:flex;
justify-content:space-between;
align-items:center;
}

#local .title_list .lists a:hover {
opacity:0.7;
}

#local .title_list .lists a:nth-child(5n) {
margin-right:0;
}

#local .title_list .lists a p {
font-size:85%;
}

#local .title_list .lists a .arrow {
border:#004ea2 1px solid;
border-left:transparent 1px solid;
border-bottom:transparent 1px solid;
width:8px;
height:8px;
transform:rotate(45deg);
}

#local h2 {
font-size:135%;
padding:15px 0;
text-align:center;
}

#local .policies .policy {
background:#f2f6fa;
padding:30px 30px;
margin-bottom:20px;
display:flex;
justify-content:space-between;
}

#local .policies .policy .photo {
width:250px;
}

#local .policies .policy .details {
width:660px;
}

#local .policies .policy .details .cates {
display:flex;
flex-wrap:wrap;
}

#local .policies .policy .details .cates .cate {
}

#local .policies .policy .details .cates .cate a {
border:#004ea2 1px dotted;
color:#004ea2;
font-size:70%;
margin:0 7px 7px 0;
padding:0 7px;
border-radius:6px;
background:#fff;
display:block;
}

#local .policies .policy .details .cates .cate a:hover {
opacity:0.7;
}

#local .policies .policy .details .areas {
display:flex;
flex-wrap:wrap;
}

#local .policies .policy .details .areas .area {
}

#local .policies .policy .details .areas .area a {
border:#004ea2 1px dotted;
color:#004ea2;
font-size:70%;
margin:0 7px 7px 0;
padding:0 7px;
border-radius:6px;
background:#fff;
display:block;
}

#local .policies .policy .details .areas .area a:hover {
opacity:0.7;
}

#local .policies .policy .details h3 {
font-size:135%;
padding:7px 0;
}

#local .pagenation {
display:flex;
justify-content:center;
align-items:center;
padding-bottom:50px;
}

#local .pagenation nav {
margin:0 5px;;
}

#local .pagenation nav a {
width:35px;
height:35px;
font-size:80%;
border:#004ea2 1px dotted;
display:flex;
justify-content:center;
align-items:center;
border-radius:6px;
}

#local .pagenation nav a.now {
border:#aaa 1px dotted;
color:#aaa;
pointer-events:none;
}

#local .pagenation nav a.none {
border:#aaa 1px dotted;
color:#aaa;
pointer-events:none;
display:none;
}

#local .pagenation nav:first-child a ,
#local .pagenation nav:last-child a {
width:110px;
}

#local .pagenation nav:first-child i {
padding:0 7px 0 0;
}

#local .pagenation nav:last-child i {
padding:0 0 0 7px;
}

#local .pagenation nav a:hover {
opacity:0.7;
}



/*旧LOCAL
#local {
}

#local section {
background:#f2f6fa;
padding:20px 25px;
margin-bottom:15px;
}

#local section.images {
display:flex;
justify-content:space-between;
flex-direction:row-reverse;
}

#local section.images .details {
width:720px;
}

#local .photo {
width:200px;
}

#local .details .item {
font-weight:bold;
padding-bottom:5px;
font-size:110%;
color:#004ea2;
}
*/


/*APPROACH*/
#approach {
}

#approach .policies {
}

#approach .title_list {
margin-bottom:50px;
}

#approach .title_list .list_title {
font-weight:bold;
margin-bottom:10px;
border-left:#004ea2 4px solid;
padding:3px 0 3px 10px;
}

#approach .title_list .lists {
display:flex;
flex-wrap:wrap;
}

#approach .title_list .lists a {
border:#004ea2 1px dotted;
padding:10px 15px;
margin:0 2% 10px 0;
width:23.5%;
border-radius:10px;
display:flex;
justify-content:space-between;
align-items:center;
}

#approach .title_list .lists a:hover {
opacity:0.7;
}

#approach .title_list .lists a:nth-child(4n) {
margin-right:0;
}

#approach .title_list .lists a p {
font-size:85%;
}

#approach .title_list .lists a .arrow {
border:#004ea2 1px solid;
border-left:transparent 1px solid;
border-bottom:transparent 1px solid;
width:8px;
height:8px;
transform:rotate(45deg);
}

#approach h2 {
font-size:135%;
padding:15px 0;
text-align:center;
}

#approach .policies .policy {
background:#f2f6fa;
padding:30px 30px;
margin-bottom:20px;
display:flex;
justify-content:space-between;
}

#approach .policies .policy .photo {
width:250px;
}

#approach .policies .policy .details {
width:660px;
}

#approach .policies .policy .details .cates {
display:flex;
flex-wrap:wrap;
}

#approach .policies .policy .details .cates .cate {
}

#approach .policies .policy .details .cates .cate a {
border:#004ea2 1px dotted;
color:#004ea2;
font-size:70%;
margin:0 7px 7px 0;
padding:0 7px;
border-radius:6px;
background:#fff;
display:flex;
align-items:center;
}

#approach .policies .policy .details .cates .cate a:hover {
opacity:0.7;
}

#approach .policies .policy .details .areas {
display:flex;
flex-wrap:wrap;
}

#approach .policies .policy .details .areas .area {
}

#approach .policies .policy .details .areas .area a {
border:#004ea2 1px dotted;
color:#004ea2;
font-size:70%;
margin:0 7px 7px 0;
padding:0 7px;
border-radius:6px;
background:#fff;
display:flex;
align-items:center;
}

#approach .policies .policy .details .areas .area a:hover {
opacity:0.7;
}

#approach .policies .policy .details h3 {
font-size:135%;
padding:7px 0;
}

#approach .pagenation {
display:flex;
justify-content:center;
align-items:center;
padding-bottom:50px;
}

#approach .pagenation nav {
margin:0 5px;;
}

#approach .pagenation nav a {
width:35px;
height:35px;
font-size:80%;
border:#004ea2 1px dotted;
display:flex;
justify-content:center;
align-items:center;
border-radius:6px;
}

#approach .pagenation nav a.now {
border:#aaa 1px dotted;
color:#aaa;
pointer-events:none;
}

#approach .pagenation nav a.none {
border:#aaa 1px dotted;
color:#aaa;
pointer-events:none;
display:none;
}

#approach .pagenation nav:first-child a ,
#approach .pagenation nav:last-child a {
width:110px;
}

#approach .pagenation nav:first-child i {
padding:0 7px 0 0;
}

#approach .pagenation nav:last-child i {
padding:0 0 0 7px;
}

#approach .pagenation nav a:hover {
opacity:0.7;
}

.cms_arrow {
border:#004ea2 1px solid;
border-left:transparent 1px solid;
border-bottom:transparent 1px solid;
width:6px;
height:6px;
transform:rotate(45deg);
margin-left:5px;
}



/*APPROACH 旧バージョン
#approach {
}

#approach section {
margin-bottom:100px;
}

#approach .details {
background:#f2f6fa;
padding:20px 25px;
margin-bottom:15px;
}

#approach .details:last-child {
margin:0;
}

#approach .details .item {
display:flex;
}

#approach .details .item p {
font-weight:bold;
padding-bottom:5px;
font-size:110%;
color:#004ea2;
}

#approach .details .detail {
}

#approach .title_list {
margin-bottom:50px;
padding:25px 40px;
border:#004ea2 1px dotted;
}

#approach .title_list .list_title {
font-weight:bold;
padding-bottom:5px;
font-size:110%;
}

#approach .title_list .lists {
display:flex;
justify-content:space-between;
flex-wrap:wrap;
}

#approach .title_list .lists p {
width:30%;
}

#approach .title_list .lists p a {
font-weight:bold;
}

#approach .title_list .lists p a:hover {
opacity:0.7;
}
*/




/*OFFICE*/
#office {
}

#office section {
padding-bottom:100px;
}

#office .details {
display:flex;
justify-content:space-between;
padding-top:15px;
}

#office .details .map1 {
width:360px;
}

#office .details .map2 {
width:530px;
}

#office .details .areas {
width:600px;
}

#office .details .areas .area {
padding-bottom:45px;
}

#office .details .areas .area:last-child {
padding-bottom:0;
}

#office .details .area2 {
width:450px;
}

#office .details .item {
font-weight:bold;
font-size:150%;
padding-bottom:5px;
}

#office .details .detail {
font-size:135%;
}

#office .mail {
width:230px;
margin-top:15px;
text-align:center;
padding-bottom:30px;
}

#office .mail a {
font-size:80%;
color:#004ea2;
border:#004ea2 1px solid;
padding:10px 0;
display:flex;
justify-content:center;
align-items:center;
position:relative;
}

#office .mail a:hover {
opacity:0.7;
}

#office .mail a .item {
padding-right:10px;
padding:0 15px 0;
}

#office .mail a .arrow {
width:6px;
height:6px;
border-top:#004ea2 1px solid;
border-right:#004ea2 1px solid;
transform:rotate(45deg);
}

#office .map {
margin-bottom:15px;
height:550px;
}


/*STORY*/
#story {
}

#story .swiper-container {
width:750px;
height:920px;
margin:0 auto 50px;
border:#ccc 1px solid;
padding-bottom:20px;
}

#story .swiper-wrapper {
width:600px;
margin:auto;
}

#story .swiper-wrapper img {
width:600px;
margin:auto;
}


/*MAIL MAGAZINE*/
.mail_magazine_subtitle {
color:#004ea2;
font-weight:bold;
}

#mail_magazine.cts {
width:800px;
}

#mail_magazine .explain {
text-align:center;
padding-bottom:15px;
}

#mail_magazine .explain .fr {
color:#e6321e;
}

#mail_magazine section {
background:url(../img/bg.png);
width:800px;
margin:0 auto 15px;
padding:0 0 40px;
border-radius:0 0 15px 15px;
}

#mail_magazine .mail_magazine_title {
background:#004ea2;
color:#fff;
font-size:110%;
font-weight:bold;
text-align:center;
padding:15px;
border-radius:15px 15px 0 0;
position:relative;
margin-bottom:40px;
}

#mail_magazine .mail_magazine_title:after {
position:absolute;
border-top:#004ea2 16px solid;
border-right:transparent 16px solid;
border-bottom:transparent 16px solid;
border-left:transparent 16px solid;
width:0;
height:0;
content:"";
bottom:-32px;
left:0;
right:0;
margin:auto;
}

#mail_magazine .details {
width:600px;
margin:0 auto 15px;
}

#mail_magazine .details:nth-child(3) {
margin-bottom:35px;
}

#mail_magazine .details:last-child {
margin-bottom:0;
}

#mail_magazine .details .details_cts {
display:flex;
align-items:center;
}

#mail_magazine .details .items {
width:180px;
}

#mail_magazine .details .items .item {
font-weight:bold;
}

#mail_magazine .details .items .required {
background:#e6321e;
color:#fff;
font-size:70%;
padding:5px 7px;
margin-left:7px;
}

#mail_magazine .details .items .any {
background:#b4bec8;
color:#fff;
font-size:70%;
padding:5px 7px;
margin-left:7px;
}

#mail_magazine .details .detail {
width:420px;
}

#mail_magazine .details .detail .mail_style {
width:100%;
}

#mail_magazine .details .detail .name_style {
width:100%;
}

#mail_magazine .details .detail .area_style {
width:50%;
background:#fff url(../mail_magazine/img/form_arrow.png) no-repeat right;
background-size:10px;
background-position:right 15px center;
}

#mail_magazine .details .detail .address_style {
width:100%;
}

#mail_magazine .btns .submit_btn .submit_style {
background:#e6321e;
color:#fff;
border-radius:10vw;
padding:15px 40px;
cursor:pointer;
font-size:100%;
font-weight:bold;
}

#mail_magazine .btns .back_btn .back_style {
background:#ccc;
color:#fff;
border-radius:10vw;
padding:15px 40px;
cursor:pointer;
font-size:100%;
font-weight:bold;
margin-right:15px;
}

input,select {
font-size:100%;
}

input {
padding:15px 20px;
}

select {
padding:10px 20px;
border-radius:7px;
}

#mail_magazine .no_required {
width:680px;
margin:0 auto 20px;
background:#fff;
padding:25px 40px;
}

#mail_magazine .no_required_title {
width:680px;
margin:auto;
font-size:90%;
padding-bottom:12px;
}

#mail_magazine .address_attention {
padding-top:10px;
font-size:80%;
}

#mail_magazine .btns {
display:flex;
justify-content:center;
}

#mail_magazine .attentions {
padding-bottom:50px;
}

#mail_magazine .attentions .attention {
font-size:70%;
display:flex;
color:#aaa;
}

#mail_magazine.confirmation {
}

.confirmation .details {
display:flex;
align-items:center;
border-bottom:#ccc 1px dashed;
padding-bottom:18px;
margin-bottom:18px;
}

.confirmation .details:last-child {
border-bottom:none;
padding-bottom:0;
margin-bottom:0;
}

#mail_magazine.confirmation .details .detail {
font-size:1rem;
line-height:150%;
letter-spacing:1px;
}

#mail_magazine .thanks {
text-align:center;
}

#mail_magazine .thanks .complete {
font-size:150%;
font-weight:bold;
color:#e6321e;
padding-bottom:30px;
}

#mail_magazine .thanks .complete_tx {
padding-bottom:70px;
}

#mail_magazine .thanks .back_home {
}

#mail_magazine .thanks .back_home a {
color:#004ea2;
border:#004ea2 1px solid;
padding:10px 20px;
border-radius:10vw;
font-size:80%;
}

#mail_magazine .thanks .back_home a:hover {
opacity:0.7;
}

#mail_magazine form ul {
width:680px;
margin:0 auto 30px;
border:#e6321e 1px solid;
background:#fff;
padding:15px 20px;
color:#e6321e;
font-size:80%;
}

#mail_magazine form ul li:before {
font-family: "Font Awesome 5 Free";
content:"\f071";
font-weight:900;
font-size:80%;
padding-right:5px;
}

#mail_magazine .warning {
color:#e6321e;
text-align:right;
font-size:80%;
padding-top:5px;
}



/*FOOTER*/
footer {
background:#004ea2;
}

footer .footer_area {
width:1000px;
margin:auto;
padding:30px 0 15px;
}

footer .footer_area .foot_info {
display:flex;
align-items:center;
justify-content:center;
padding-bottom:30px;
}

footer .footer_area .foot_info .foot_logo {
width:210px;
margin-right:30px;
}

footer .footer_area .foot_info .office {
font-size:80%;
font-weight:bold;
color:#fff;
padding-right:10px;
}

footer .footer_area .foot_info .data {
font-size:80%;
color:#fff;
border-left:#fff 1px solid;
padding-left:10px;
}

footer .mail {
width:200px;
margin:auto;
text-align:center;
padding-bottom:30px;
}

footer .mail a {
font-size:80%;
color:#fff;
border:#fff 1px solid;
padding:10px 15px;
display:flex;
justify-content:center;
align-items:center;
position:relative;
}

footer .mail a:hover {
opacity:0.7;
}

footer .mail a .item {
padding-right:10px;
}

footer .mail a .arrow {
width:6px;
height:6px;
border-top:#fff 1px solid;
border-right:#fff 1px solid;
transform:rotate(45deg);
}

footer .footer_area .copyright {
color:#fff;
text-align:center;
font-size:70%;
}



/*CHANNEL*/
.channel_cts {
width:1000px;
margin:0 auto 30px;
display:none;
}

.channel {
width:340px;
border:#ea3223 1px solid;
background:#ea3223;
border-radius:10px;
margin:0 0 0 auto;
}

.channel a {
display:flex;
justify-content:center;
align-items:center;
color:#fff;
font-weight:bold;
padding:15px 10px;
}

.channel a:hover {
opacity:0.7;
}

.channel a i {
color:#fff;
font-size:180%;
margin-right:10px;
}


}