/// <summary>
    /// 懐中電灯の回転
    /// </summary>
    void FlashLightRotation()
    {
#if UNITY_SWITCH && !(UNITY_EDITOR)
        //コントローラーの向きと同じ方向に回転する
        transform.localRotation = SwitchGyro.GetGyro(0);
#endif
        var eulerAngles = transform.localEulerAngles;
        //X軸回転の制限
        if (eulerAngles.x > rotLimitAbs.down &&
            eulerAngles.x < 360 - rotLimitAbs.up)
        {
            eulerAngles.x = (eulerAngles.x < 180 ? rotLimitAbs.down : -rotLimitAbs.up);
        }
        //Y軸回転の制限
        if (eulerAngles.y > rotLimitAbs.right &&
            eulerAngles.y < 360 - rotLimitAbs.left)
        {
            eulerAngles.y = (eulerAngles.y < 180 ? rotLimitAbs.right : -rotLimitAbs.left);
        }
        //Z軸回転の制限
        if (eulerAngles.z > rotLimitAbs.counterclockwise &&
            eulerAngles.z < 360 - rotLimitAbs.clockwise)
        {
            eulerAngles.z = (eulerAngles.z < 180 ? rotLimitAbs.counterclockwise : -rotLimitAbs.clockwise);
        }
        transform.localEulerAngles = eulerAngles;
    }
 void Update()
 {
     FlashLightRotation();
     //Stick押し込みでリセット
     if (SwitchInput.GetButtonDown(0, SwitchButton.Stick))
     {
         SwitchGyro.SetBaseGyro(0);
     }
 }