@media screen and (min-width: 768px), print { #grobalNav ul li:nth-child(1) a { border-bottom: 2px solid #f80; } }
.btn_arrow { text-align: center; display: block; text-decoration: none; background-repeat: no-repeat; border: 1px solid #000; transition: all .3s; }

@media screen and (min-width: 768px), print { .btn_arrow { background-position: right 9px center; background-size: 32px; } }
@media screen and (max-width: 767px) { .btn_arrow { background-position: right 13px center; background-size: 24px; } }
#white_box { background-color: rgba(255, 255, 255, 0.5); }

#topics ul li a, #topics #topics_link a { color: #633; }
#topics ul li a:hover, #topics #topics_link a:hover { color: #c00; }

#message p#main_message { text-align: center; color: #690; }

#sub_image { display: flex; flex-wrap: wrap; justify-content: space-between; }
#sub_image p img { border-radius: 50%; border: 2px solid #fff; box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.2); }

#overview { background-image: url(../../../images/bg_business.png); background-repeat: no-repeat; background-size: cover; }
#overview ul li { background-color: #fff; box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.2); }
#overview ul li a { text-decoration: none; }
#overview ul li a .name { border: none; text-align: left; background-image: url(../../../images/btn_arrow_gray.png); }
#overview ul li a .name .en { color: #999; }
#overview ul li:nth-child(1) a .name .jp { color: #e62; }
#overview ul li:nth-child(2) a .name .jp { color: #d01; }
#overview ul li:nth-child(3) a .name .jp { color: #093; }

@media screen and (min-width: 768px), print { .btn_arrow { padding: 33px 0; font-size: 20px; }
  #content { background-image: url(../../../images/bg_topimage_pc.png); background-repeat: no-repeat; background-position: center top; background-size: contain; }
  #topimage .hidden-xs { padding-top: 16px; }
  #topimage .hidden-xs img { margin: 0px auto; max-width: 1240px; }
  #topics { background-color: rgba(255, 153, 0, 0.5); }
  #topics section { display: table; padding: 12px 0; }
  #topics section h2, #topics section ul, #topics section #topics_link { display: table-cell; }
  #topics section h2, #topics section ul { vertical-align: middle; }
  #topics section h2 { font-size: 16px; font-weight: normal; color: #f80; text-align: center; background-color: #fff; height: auto; border-radius: 4px; }
  #topics section h2 span { display: block; width: 96px; }
  #topics section ul { padding: 4px 0px 4px 20px; width: 100%; }
  #topics section ul li a { display: inline-block; text-indent: -6.7em; padding-left: 6.7em; }
  #topics section #topics_link { vertical-align: bottom; padding-bottom: 4px; font-size: 14px; }
  #topics section #topics_link a { text-align: right; width: 130px; display: block; }
  .ttl-section { margin-bottom: 20px; }
  #message { padding-top: 80px; }
  #message p { font-size: 18px; line-height: 32px; }
  #message p#main_message { margin-top: 18px; }
  #message p#main_message br { display: none; }
  #ceo { margin-top: 50px; }
  #ceo .greeting { margin-top: 0; display: flex; }
  #ceo .greeting .text { padding-right: 2em; }
  #ceo .greeting .text p { font-size: 18px; line-height: 32px; }
  #ceo .greeting .text p + p { margin-top: 0.5em; }
  #ceo .greeting .portrait { width: 180px; flex-shrink: 0; }
  #ceo .greeting .portrait img { width: 100%; }
  #ceo .signature { margin-top: 0.5em; text-align: right; }
  #ceo .signature .position { display: inline-block; font-size: 16px; line-height: 18px; letter-spacing: 0.1em; }
  #ceo .signature .img_sign { display: inline; height: 42px; padding: 0 0 10px 1em; }
  #sub_image { margin: 80px auto 60px; width: 100%; max-width: 1116px; }
  #sub_image p { width: calc( ( 100% - ( 36px * 3 ) ) / 4 ); }
  #overview { margin-top: 80px; background-position: center top; padding: 48px 0px; }
  #overview .ttl-business { width: 100%; max-width: 1152px; margin: 0 auto; padding: 0 16px; }
  #overview ul { width: 100%; max-width: 1152px; margin: 0 auto; padding: 0 16px; display: flex; flex-wrap: wrap; justify-content: space-between; }
  #overview ul li { width: calc( ( 100% - ( 32px * 2 ) ) / 3 ); border-radius: 10px; }
  #overview ul li a .image_bg img { border-radius: 10px 10px 0 0; }
  #overview ul li a .name { display: block; padding: 15px 0; text-align: center; line-height: 24px; }
  #overview ul li a .name .jp { font-size: 20px; }
  #overview ul li a .name .en { font-size: 14px; }
  #overview ul li a * { transition: all .3s; }
  #overview ul li a:hover img { opacity: 0.8; } }
@media screen and (max-width: 991px) and (min-width: 768px) { #sub_image { padding: 0 18px; }
  #sub_image p { width: calc( ( 100% - ( 18px * 3 ) ) / 4 ); }
  #overview .ttl-business { max-width: 1168px; padding: 0 32px; }
  #overview ul { max-width: 1168px; padding: 0 32px; }
  #overview ul li { width: calc( ( 100% - ( 16px * 2 ) ) / 3 ); }
  #overview ul li a .name { line-height: 22px; }
  #overview ul li a .name .jp { font-size: 16px; }
  #overview ul li a .name .en { font-size: 12px; } }
@media screen and (max-width: 767px) { .btn_arrow { padding: 13px 0; font-size: 16px; }
  #content { background-image: url(../../../images/bg_topimage_sp.jpg); background-repeat: no-repeat; background-position: center top; background-size: contain; }
  #topimage .visible-xs { padding-top: 15px; padding-bottom: 25px; }
  #topimage .visible-xs img { margin: 0px auto; }
  #topics h2, #topics li, #topics #topics_link > a { font-size: 12px; }
  #topics h2 { margin-right: -13px; margin-left: -13px; text-align: center; color: #f80; line-height: 24px; border-top: 2px solid rgba(255, 153, 0, 0.5); background-color: rgba(255, 255, 255, 0.5); }
  #topics ul, #topics #topics_link { background-color: rgba(255, 153, 0, 0.5); margin-right: -13px; margin-left: -13px; }
  #topics ul { padding-top: 12px; }
  #topics ul li { padding-right: 13px; padding-left: 13px; }
  #topics ul li a { display: inline-block; text-indent: -6.7em; padding-left: 6.7em; }
  #topics #topics_link { text-align: right; padding-bottom: 6px; }
  #topics #topics_link a { padding: 6px; margin-right: 7px; }
  .ttl-section { margin-top: 20px; }
  #message { padding-top: 20px; }
  #message p { line-height: 24px; }
  #message p#main_message { margin-top: 12px; }
  #ceo { margin-top: 10px; }
  #ceo .greeting { margin-top: 0; }
  #ceo .greeting .text p + p { margin-top: 0.5em; }
  #ceo .greeting .portrait { width: 120px; margin: 1em auto 0; }
  #ceo .greeting .portrait img { width: 100%; }
  #ceo .signature { margin-top: 0.5em; line-height: 1.25em; text-align: center; }
  #ceo .signature .position { letter-spacing: 0.1em; }
  #ceo .signature .img_sign { display: inline; height: 28px; margin-top: 5px; }
  #sub_image { margin: 36px auto 24px; padding: 0 25px; width: 100%; }
  #sub_image p { width: calc( 50% - 9px ); }
  #sub_image p:nth-child(n+3) { margin-top: 18px; }
  #overview { margin-top: 42px; background-position: right middle; padding: 28px 0px; }
  #overview .ttl-business { padding-left: 13px; padding-right: 13px; }
  #overview ul { padding-left: 13px; padding-right: 13px; }
  #overview ul li { border-radius: 5px; }
  #overview ul li + li { margin-top: 7px; }
  #overview ul li:nth-child(1) a .image_bg { background-image: url(../../../images/pho_overview_01.png); }
  #overview ul li:nth-child(2) a .image_bg { background-image: url(../../../images/pho_overview_02.png); }
  #overview ul li:nth-child(3) a .image_bg { background-image: url(../../../images/pho_overview_03.png); }
  #overview ul li a { display: table; width: 100%; height: 84px; }
  #overview ul li a p { display: table-cell; vertical-align: middle; }
  #overview ul li a p.image_bg { width: 126px; height: 84px; background-repeat: no-repeat; background-position: right -22px; background-size: 126px; border-radius: 5px 0 0 5px; }
  #overview ul li a p.image_bg img { display: none; }
  #overview ul li a p.name { padding-left: 10px; line-height: 20px; background-position: right 3px center; width: calc( 100% - 126px); }
  #overview ul li a p.name .jp { font-size: 14px; }
  #overview ul li a p.name .en { font-size: 10px; } }
