@charset "UTF-8";


/*********************************
 * ～900
 *********************************/

@media screen and (max-width:900px){
  
	main h2 {width:90%;}
  .area2 + h2 {margin:22% auto 0 auto;}
  
  /* info */
  main h2:first-child {margin:12% auto 0 auto;}
  .area2 {width:90%; margin:2em auto 0 auto;}
  .area2 .ptxt {margin:2em 0 0 0;}
  .area2 .ptxt .fleft {width:60%;}
  .area2 .ptxt .fright {margin:1.5em 0 0 0; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  
  /* profile */
  main h2:first-child + .area2 + h2 {margin:22% auto 0 auto;}
  main h2:first-child + .area2 + h2 + .ptxt {width:90%; margin:2em auto 0 auto; padding:2.2em 2em; border:3px solid #8b253a; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  main h2:first-child + .area2 + h2 + .ptxt table {width:100%;}
  main h2:first-child + .area2 + h2 + .ptxt table th {display:block; padding:0.8em 0 0 0; font-weight:600;}
  main h2:first-child + .area2 + h2 + .ptxt table td {display:block; padding:0.5em 0 1.2em 0; border-bottom:1px solid #7f7f7f;}
	main h2:first-child + .area2 + h2 + .ptxt table tr:last-child td {border:0;}
 
  main h2 + .ptxt {width:90%; margin:1em auto 0 auto; font-weight:500; line-height:2;}
  
  /* office */
  .office {margin:25% 0 0 0;}
  .office .inner {margin:0 auto;}
  .office .inner .title {padding:2em 0 2em 5%; background:#77bae8 url(../images/profile_bg.jpg) right bottom no-repeat; background-size:40% auto;}
  .office .inner .title h2 {position:relative; display:flex; flex-wrap:wrap; color:#fff; font-size:150%; font-weight:600; line-height:1;}
  .office .inner .title h2::before {position:absolute; display:block; content:''; width:0.6em; height:1px; background:#fff; top:0.5em; left:0;}
  .office .inner .title h2 span {display:block; width:100%; padding:1em 0 0 0; font-family:'Lato', sans-serif; font-size:45%; letter-spacing:0.1em; font-weight:700;}
  .office .inner .data {width:90%; margin:0 auto;}
  .office .inner .data dl {width:100%; margin:1em 0 0 0;}
  .office .inner .data dl dt {display:block; padding:1.5em 1.5em 0 1.5em; font-weight:600;}
  .office .inner .data dl dd {padding:0.3em 1.5em 1.5em 1.5em; border-bottom:1px solid #7f7f7f;}
  
  /* access */
  .ptxt + h2 {margin:25% auto 0 auto;}
  iframe.gm {width:100%; height:30em; margin:2em 0 0 0;}

}



/*********************************
 * 901～
 *********************************/

@media screen and (min-width:901px) {

	main h2 {width:94%; max-width:1200px; margin:0 auto;}
  .area2 + h2 {margin:10% auto 0 auto;}
  
  /* info */
  main h2:first-child {margin:8% auto 0 auto;}
  .area2 {width:94%; max-width:1200px; margin:2em auto 0 auto;}
  .area2 .ptxt {display:flex; justify-content:space-between; width:100%; margin:2.5em 0 0 0;}
  .area2 .ptxt .fleft {width:30%;}
  .area2 .ptxt .fright {width:63%; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  
  /* profile */
  main h2:first-child + .area2 + h2 {margin:10% auto 0 auto;}
  main h2:first-child + .area2 + h2 + .ptxt {width:94%; max-width:1200px; margin:2.5em auto 0 auto; padding:2.8em 4em 1.8em 4em; border:4px solid #8b253a; font-weight:500; line-height:2; text-align:justify; text-justify:inter-ideograph;}
  main h2:first-child + .area2 + h2 + .ptxt table {width:100%;}
  main h2:first-child + .area2 + h2 + .ptxt table th {width:20%; padding:0.5em 1.5em 0 1.5em;  border-bottom:1px solid #7f7f7f; font-weight:600; vertical-align:top;}
  main h2:first-child + .area2 + h2 + .ptxt table td {padding:0.5em 1.5em 1.5em 1.5em; border-bottom:1px solid #7f7f7f;}
  main h2:first-child + .area2 + h2 + .ptxt table tr:last-child th,
	main h2:first-child + .area2 + h2 + .ptxt table tr:last-child td {border:0;}
 
  main h2 + .ptxt {width:94%; max-width:1200px; margin:1em auto 0 auto; font-weight:500; line-height:2;}
  
  /* office */
  .office {margin:12% 0 0 0; background:linear-gradient(to right, #77bae8 50%, transparent 50%);}
  .office {margin:12% 0 0 0; background:linear-gradient(to right, #77bae8 50%, transparent 50%);}
  .office .inner {position:relative; display:flex; justify-content:space-between; width:100%; max-width:1320px; margin:0 auto; padding:0 3%; background:url(../images/profile_bg.jpg) left bottom no-repeat; background-size:50% auto; z-index:+1;}
  .office .inner .title {width:50%; padding:5em 4% 0 0; background:linear-gradient(to left, #fff 10%, transparent 10%);}
  .office .inner .title h2 {display:flex; flex-wrap:wrap; position:relative; padding:0 0 1em 1em; color:#fff; font-size:190%; font-weight:600; line-height:1;}
  .office .inner .title h2::before {position:absolute; display:block; content:''; width:0.6em; height:1px; background:#fff; top:0.5em; left:0;}
  .office .inner .title h2 span {display:block; width:100%; padding:1em 0 0 0; font-family:'Lato', sans-serif; font-size:40%; letter-spacing:0.1em; font-weight:700;}
  .office .inner .data {width:45%; padding:5em 0; font-size:95%;}
  .office .inner .data dl {width:100%; border-top:1px solid #7f7f7f;}
  .office .inner .data dl dt {display:block; padding:1.5em 1.5em 0 1.5em; font-weight:600;}
  .office .inner .data dl dd {padding:0.5em 1.5em 1.5em 1.5em; border-bottom:1px solid #7f7f7f;}
  
  /* access */
  .ptxt + h2 {margin:12% auto 0 auto;}
  iframe.gm {width:100%; height:30em; margin:2.5em 0 0 0;}

}

